UNPKG

@bsv/wallet-toolbox

Version:

BRC100 conforming wallet, wallet storage and wallet signer components

41 lines 1.54 kB
/** * StorageServer.ts * * A server-side class that "has a" local WalletStorage (like a StorageKnex instance), * and exposes it via a JSON-RPC POST endpoint using Express. */ import { Request } from 'express'; import { sdk, Wallet, StorageProvider } from '../../index.all'; export interface WalletStorageServerOptions { port: number; wallet: Wallet; monetize: boolean; calculateRequestPrice?: (req: Request) => number | Promise<number>; adminIdentityKeys?: string[]; } export declare class StorageServer { private app; private port; private storage; private wallet; private monetize; private calculateRequestPrice?; private adminIdentityKeys?; constructor(storage: StorageProvider, options: WalletStorageServerOptions); private setupRoutes; private validateParam0; start(): void; validateDate(date: Date | string | number): Date; /** * Helper to force uniform behavior across database engines. * Use to process all individual records with time stamps retreived from database. */ validateEntity<T extends sdk.EntityTimeStamp>(entity: T, dateFields?: string[]): T; /** * Helper to force uniform behavior across database engines. * Use to process all arrays of records with time stamps retreived from database. * @returns input `entities` array with contained values validated. */ validateEntities<T extends sdk.EntityTimeStamp>(entities: T[], dateFields?: string[]): T[]; } //# sourceMappingURL=StorageServer.d.ts.map