import { Config } from '../fileStores/config'; import { Logger } from '../logger'; import { RpcClient } from '../rpc/clients/client'; import { DatabaseBlock, DatabasePayoutTransaction } from './poolDatabase/database'; import { WebhookNotifier } from './webhooks'; export declare class MiningPoolShares { readonly rpc: RpcClient; readonly config: Config; readonly logger: Logger; readonly webhooks: WebhookNotifier[]; private readonly db; private enablePayouts; private poolName; private recentShareCutoff; private accountName; private constructor(); static init(options: { rpc: RpcClient; config: Config; logger: Logger; webhooks?: WebhookNotifier[]; enablePayouts?: boolean; dbPath?: string; }): Promise; start(): Promise; stop(): Promise; submitShare(publicAddress: string): Promise; shareRate(publicAddress?: string): Promise; sharesPendingPayout(publicAddress?: string): Promise; rolloverPayoutPeriod(): Promise; submitBlock(sequence: number, hash: string, reward: bigint): Promise; unconfirmedBlocks(): Promise; updateBlockStatus(block: DatabaseBlock, main: boolean, confirmed: boolean): Promise; unconfirmedPayoutTransactions(): Promise; updatePayoutTransactionStatus(transaction: DatabasePayoutTransaction, confirmed: boolean, expired: boolean): Promise; createNewPayout(): Promise; hasAvailableBalance(amount: bigint): Promise; sendTransaction(outputs: { publicAddress: string; amount: string; memo: string; assetId: string; }[]): Promise; assertAccountExists(): Promise; } //# sourceMappingURL=poolShares.d.ts.map