import { Request, QLDB as AWSQLDB } from 'aws-sdk';
declare type ReturnTypeFrom<K extends keyof AWSQLDB> = AWSQLDB[K] extends (...args: any) => Request<infer R, any> ? R : never;
declare type ParamsFrom<K extends keyof AWSQLDB, Extras> = AWSQLDB[K] extends {
    (param: infer P, callback: (...args: any) => void): Request<infer R, any>;
    (callback: (...args: any) => void): any;
} ? P & Extras : never;
export declare class QLDB {
    private readonly client;
    private constructor();
    readonly signingRegion: undefined;
    readonly service: "qldb";
    readonly global: false;
    readonly category: "Database";
    readonly topLevelCalls: readonly ["listJournalS3Exports", "listLedgers"];
    cancelJournalKinesisStream: (params: ParamsFrom<'cancelJournalKinesisStream', Record<string, never>>) => Promise<ReturnTypeFrom<'cancelJournalKinesisStream'>>;
    createLedger: (params: ParamsFrom<'createLedger', Record<string, never>>) => Promise<ReturnTypeFrom<'createLedger'>>;
    deleteLedger: (params: ParamsFrom<'deleteLedger', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteLedger'>>;
    describeJournalKinesisStream: (params: ParamsFrom<'describeJournalKinesisStream', Record<string, never>>) => Promise<ReturnTypeFrom<'describeJournalKinesisStream'>>;
    describeJournalS3Export: (params: ParamsFrom<'describeJournalS3Export', Record<string, never>>) => Promise<ReturnTypeFrom<'describeJournalS3Export'>>;
    describeLedger: (params: ParamsFrom<'describeLedger', Record<string, never>>) => Promise<ReturnTypeFrom<'describeLedger'>>;
    exportJournalToS3: (params: ParamsFrom<'exportJournalToS3', Record<string, never>>) => Promise<ReturnTypeFrom<'exportJournalToS3'>>;
    getBlock: (params: ParamsFrom<'getBlock', Record<string, never>>) => Promise<ReturnTypeFrom<'getBlock'>>;
    getDigest: (params: ParamsFrom<'getDigest', Record<string, never>>) => Promise<ReturnTypeFrom<'getDigest'>>;
    getRevision: (params: ParamsFrom<'getRevision', Record<string, never>>) => Promise<ReturnTypeFrom<'getRevision'>>;
    listJournalKinesisStreamsForLedger: (params: ParamsFrom<'listJournalKinesisStreamsForLedger', Record<string, never>>) => Promise<ReturnTypeFrom<'listJournalKinesisStreamsForLedger'>>;
    listJournalS3Exports: (params: ParamsFrom<'listJournalS3Exports', Record<string, never>>) => Promise<ReturnTypeFrom<'listJournalS3Exports'>>;
    listJournalS3ExportsForLedger: (params: ParamsFrom<'listJournalS3ExportsForLedger', Record<string, never>>) => Promise<ReturnTypeFrom<'listJournalS3ExportsForLedger'>>;
    listLedgers: (params: ParamsFrom<'listLedgers', Record<string, never>>) => Promise<ReturnTypeFrom<'listLedgers'>>;
    listTagsForResource: (params: ParamsFrom<'listTagsForResource', Record<string, never>>) => Promise<ReturnTypeFrom<'listTagsForResource'>>;
    streamJournalToKinesis: (params: ParamsFrom<'streamJournalToKinesis', Record<string, never>>) => Promise<ReturnTypeFrom<'streamJournalToKinesis'>>;
    tagResource: (params: ParamsFrom<'tagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'tagResource'>>;
    untagResource: (params: ParamsFrom<'untagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'untagResource'>>;
    updateLedger: (params: ParamsFrom<'updateLedger', Record<string, never>>) => Promise<ReturnTypeFrom<'updateLedger'>>;
    updateLedgerPermissionsMode: (params: ParamsFrom<'updateLedgerPermissionsMode', Record<string, never>>) => Promise<ReturnTypeFrom<'updateLedgerPermissionsMode'>>;
    static fromClient(client: AWSQLDB): QLDB;
    static client(options?: AWSQLDB.Types.ClientConfiguration): QLDB;
}
export {};
