import { CardanoNode, HealthCheckResponse, ProviderDependencies } from '@cardano-sdk/core'; import { InMemoryCache } from '../../InMemoryCache'; import { Logger } from 'ts-log'; import { Pool } from 'pg'; export interface DbPools { main: Pool; healthCheck: Pool; } export interface DbSyncProviderDependencies extends ProviderDependencies { cache: { healthCheck: InMemoryCache; }; dbPools: DbPools; cardanoNode: CardanoNode; } declare type AnyArgs = any[]; export declare const findLedgerTipOptions: { readonly name: "find_ledger_tip"; readonly text: "\nSELECT\n block_no, slot_no, hash\nFROM block\nWHERE\n block_no = (SELECT MAX(block_no) FROM block)"; }; export declare const DbSyncProvider: {}) | (new (...args: AnyArgs) => {}) = new () => {}>(BaseClass?: T | undefined) => (T extends new (...baseArgs: AnyArgs) => {} ? new (dependencies: DbSyncProviderDependencies, ...args: T extends abstract new (...baseArgs: infer A) => {} ? A : T extends new (...baseArgs: infer A_1) => {} ? A_1 : never) => (T extends abstract new (...baseArgs: AnyArgs) => infer I ? I : T extends new (...baseArgs: AnyArgs) => infer I_1 ? I_1 : never) & { dbPools: DbPools; cardanoNode: CardanoNode; logger: Logger; healthCheck: () => Promise; } : abstract new (dependencies: DbSyncProviderDependencies, ...args: T extends abstract new (...baseArgs: infer A) => {} ? A : T extends new (...baseArgs: infer A_1) => {} ? A_1 : never) => (T extends abstract new (...baseArgs: AnyArgs) => infer I ? I : T extends new (...baseArgs: AnyArgs) => infer I_1 ? I_1 : never) & { dbPools: DbPools; cardanoNode: CardanoNode; logger: Logger; healthCheck: () => Promise; }) & { prototype: { healthCheck: () => Promise; }; }; export {}; //# sourceMappingURL=DbSyncProvider.d.ts.map