UNPKG

@bsv/wallet-toolbox

Version:

BRC100 conforming wallet, wallet storage and wallet signer components

71 lines 4.93 kB
import { sdk } from '../../index.all'; import { TableCertificateField, TableCertificateX, TableCommission, TableMonitorEvent, TableOutput, TableOutputBasket, TableOutputTag, TableOutputTagMap, TableProvenTx, TableProvenTxReq, TableSettings, TableSyncState, TableTransaction, TableTxLabel, TableTxLabelMap, TableUser } from '../index.all'; import { Knex } from 'knex'; import { StorageReader, StorageReaderOptions } from '../StorageReader'; export interface StorageMySQLDojoReaderOptions extends StorageReaderOptions { chain: sdk.Chain; /** * Knex database interface initialized with valid connection configuration. */ knex: Knex; } export declare class StorageMySQLDojoReader extends StorageReader implements sdk.WalletStorageSyncReader { knex: Knex; constructor(options: StorageMySQLDojoReaderOptions); destroy(): Promise<void>; transaction<T>(scope: (trx: sdk.TrxToken) => Promise<T>, trx?: sdk.TrxToken): Promise<T>; toDb(trx?: sdk.TrxToken): Knex<any, any[]>; readSettings(trx?: sdk.TrxToken): Promise<TableSettings>; setupQuery<T extends object>(table: string, args: sdk.FindPartialSincePagedArgs<T>): Knex.QueryBuilder; findOutputBasketsQuery(args: sdk.FindOutputBasketsArgs): Knex.QueryBuilder; findOutputBaskets(args: sdk.FindOutputBasketsArgs): Promise<TableOutputBasket[]>; findTxLabelsQuery(args: sdk.FindTxLabelsArgs): Knex.QueryBuilder; findTxLabels(args: sdk.FindTxLabelsArgs): Promise<TableTxLabel[]>; findOutputTagsQuery(args: sdk.FindOutputTagsArgs): Knex.QueryBuilder; findOutputTags(args: sdk.FindOutputTagsArgs): Promise<TableOutputTag[]>; findTransactionsQuery(args: sdk.FindTransactionsArgs, count?: boolean): Knex.QueryBuilder; findTransactions(args: sdk.FindTransactionsArgs): Promise<TableTransaction[]>; findCommissionsQuery(args: sdk.FindCommissionsArgs): Knex.QueryBuilder; findCommissions(args: sdk.FindCommissionsArgs): Promise<TableCommission[]>; limitString(s: string, maxLen: number): string; findOutputsQuery(args: sdk.FindOutputsArgs, count?: boolean): Knex.QueryBuilder; findOutputs(args: sdk.FindOutputsArgs): Promise<TableOutput[]>; findCertificatesQuery(args: sdk.FindCertificatesArgs): Knex.QueryBuilder; findCertificates(args: sdk.FindCertificatesArgs): Promise<TableCertificateX[]>; findCertificateFieldsQuery(args: sdk.FindCertificateFieldsArgs): Knex.QueryBuilder; findCertificateFields(args: sdk.FindCertificateFieldsArgs): Promise<TableCertificateField[]>; findSyncStates(args: sdk.FindSyncStatesArgs): Promise<TableSyncState[]>; findUsers(args: sdk.FindUsersArgs): Promise<TableUser[]>; getProvenTxsForUserQuery(args: sdk.FindForUserSincePagedArgs): Knex.QueryBuilder; getProvenTxsForUser(args: sdk.FindForUserSincePagedArgs): Promise<TableProvenTx[]>; getProvenTxReqsForUserQuery(args: sdk.FindForUserSincePagedArgs): Knex.QueryBuilder; getProvenTxReqsForUser(args: sdk.FindForUserSincePagedArgs): Promise<TableProvenTxReq[]>; getTxLabelMapsForUserQuery(args: sdk.FindForUserSincePagedArgs): Knex.QueryBuilder; getTxLabelMapsForUser(args: sdk.FindForUserSincePagedArgs): Promise<TableTxLabelMap[]>; getOutputTagMapsForUserQuery(args: sdk.FindForUserSincePagedArgs): Knex.QueryBuilder; getOutputTagMapsForUser(args: sdk.FindForUserSincePagedArgs): Promise<TableOutputTagMap[]>; countCertificateFields(args: sdk.FindCertificateFieldsArgs): Promise<number>; countCertificates(args: sdk.FindCertificatesArgs): Promise<number>; countCommissions(args: sdk.FindCommissionsArgs): Promise<number>; countOutputBaskets(args: sdk.FindOutputBasketsArgs): Promise<number>; countOutputs(args: sdk.FindOutputsArgs): Promise<number>; countOutputTags(args: sdk.FindOutputTagsArgs): Promise<number>; countSyncStates(args: sdk.FindSyncStatesArgs): Promise<number>; countTransactions(args: sdk.FindTransactionsArgs): Promise<number>; countTxLabels(args: sdk.FindTxLabelsArgs): Promise<number>; countUsers(args: sdk.FindUsersArgs): Promise<number>; findMonitorEvents(args: sdk.FindMonitorEventsArgs): Promise<TableMonitorEvent[]>; countMonitorEvents(args: sdk.FindMonitorEventsArgs): Promise<number>; /** * 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[], booleanFields?: 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[], booleanFields?: string[]): T[]; } //# sourceMappingURL=StorageMySQLDojoReader.d.ts.map