Package Exports
- @pooflabs/core
 
Readme
@tarobase/core
Core functionality for Tarobase SDKs. This package provides the shared functionality used by both the web and server SDKs.
Installation
npm install @tarobase/coreUsage
This package is typically not used directly, but is instead used as a dependency by @tarobase/web and @tarobase/server. If you're building a browser application, use @tarobase/web. If you're building a server application, use @tarobase/server.
API Reference
Core Types
export interface ClientConfig {
  appId: string;
  apiUrl: string;
  authMethod: string;
  privyConfig?: any;
  chain?: string;
  useSessionStorage?: boolean;
}
export interface AuthProvider {
  login(): Promise<User | null>;
  runTransaction(evmTransactionData?: EVMTransaction, solTransactionData?: SolTransaction, options?: SetOptions): Promise<TransactionResult>;
  signMessage(message: string): Promise<string>;
  restoreSession(): Promise<User | null>;
  logout(): Promise<void>;
  getNativeMethods(): Promise<any>;
}
export interface User {
  address: string;
  provider: AuthProvider;
}Core Operations
// Initialize the SDK
function configInit(newConfig: Partial<ClientConfig>, options?: SessionOptions): Promise<void>;
// Get the current configuration
function getConfig(): Promise<ClientConfig>;
// Data operations
function get(path: string): Promise<any>;
function set(path: string, data: any, options?: SetOptions): Promise<any>;
function setMany(paths: { [key: string]: any }, options?: SetOptions): Promise<any>;
function setFile(path: string, file: File, metadata?: any): Promise<any>;
function getFiles(path: string): Promise<any>;
function runQuery(queryString: string, variables?: any): Promise<any>;
function runQueryMany(queryString: string, variables?: any): Promise<any>;
// Subscription
function subscribe(path: string, options?: SubscriptionOptions): Promise<() => void>;Contributing
Please see the main repository for contribution guidelines.