import { Request, AmplifyBackend as AWSAmplifyBackend } from 'aws-sdk';
declare type ReturnTypeFrom<K extends keyof AWSAmplifyBackend> = AWSAmplifyBackend[K] extends (...args: any) => Request<infer R, any> ? R : never;
declare type ParamsFrom<K extends keyof AWSAmplifyBackend, Extras> = AWSAmplifyBackend[K] extends {
    (param: infer P, callback: (...args: any) => void): Request<infer R, any>;
    (callback: (...args: any) => void): any;
} ? P & Extras : never;
export declare class AmplifyBackend {
    private readonly client;
    private constructor();
    readonly signingRegion: undefined;
    readonly service: "amplifybackend";
    readonly global: false;
    readonly category: "Other";
    readonly topLevelCalls: readonly [];
    cloneBackend: (params: ParamsFrom<'cloneBackend', Record<string, never>>) => Promise<ReturnTypeFrom<'cloneBackend'>>;
    createBackend: (params: ParamsFrom<'createBackend', Record<string, never>>) => Promise<ReturnTypeFrom<'createBackend'>>;
    createBackendAPI: (params: ParamsFrom<'createBackendAPI', Record<string, never>>) => Promise<ReturnTypeFrom<'createBackendAPI'>>;
    createBackendAuth: (params: ParamsFrom<'createBackendAuth', Record<string, never>>) => Promise<ReturnTypeFrom<'createBackendAuth'>>;
    createBackendConfig: (params: ParamsFrom<'createBackendConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'createBackendConfig'>>;
    createBackendStorage: (params: ParamsFrom<'createBackendStorage', Record<string, never>>) => Promise<ReturnTypeFrom<'createBackendStorage'>>;
    createToken: (params: ParamsFrom<'createToken', Record<string, never>>) => Promise<ReturnTypeFrom<'createToken'>>;
    deleteBackend: (params: ParamsFrom<'deleteBackend', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteBackend'>>;
    deleteBackendAPI: (params: ParamsFrom<'deleteBackendAPI', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteBackendAPI'>>;
    deleteBackendAuth: (params: ParamsFrom<'deleteBackendAuth', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteBackendAuth'>>;
    deleteBackendStorage: (params: ParamsFrom<'deleteBackendStorage', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteBackendStorage'>>;
    deleteToken: (params: ParamsFrom<'deleteToken', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteToken'>>;
    generateBackendAPIModels: (params: ParamsFrom<'generateBackendAPIModels', Record<string, never>>) => Promise<ReturnTypeFrom<'generateBackendAPIModels'>>;
    getBackend: (params: ParamsFrom<'getBackend', Record<string, never>>) => Promise<ReturnTypeFrom<'getBackend'>>;
    getBackendAPI: (params: ParamsFrom<'getBackendAPI', Record<string, never>>) => Promise<ReturnTypeFrom<'getBackendAPI'>>;
    getBackendAPIModels: (params: ParamsFrom<'getBackendAPIModels', Record<string, never>>) => Promise<ReturnTypeFrom<'getBackendAPIModels'>>;
    getBackendAuth: (params: ParamsFrom<'getBackendAuth', Record<string, never>>) => Promise<ReturnTypeFrom<'getBackendAuth'>>;
    getBackendJob: (params: ParamsFrom<'getBackendJob', Record<string, never>>) => Promise<ReturnTypeFrom<'getBackendJob'>>;
    getBackendStorage: (params: ParamsFrom<'getBackendStorage', Record<string, never>>) => Promise<ReturnTypeFrom<'getBackendStorage'>>;
    getToken: (params: ParamsFrom<'getToken', Record<string, never>>) => Promise<ReturnTypeFrom<'getToken'>>;
    importBackendAuth: (params: ParamsFrom<'importBackendAuth', Record<string, never>>) => Promise<ReturnTypeFrom<'importBackendAuth'>>;
    importBackendStorage: (params: ParamsFrom<'importBackendStorage', Record<string, never>>) => Promise<ReturnTypeFrom<'importBackendStorage'>>;
    listBackendJobs(params: {
        [K in keyof ParamsFrom<'listBackendJobs', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listBackendJobs', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listBackendJobs'>]-?: ReturnTypeFrom<'listBackendJobs'>[K];
        }['Jobs'];
    }>;
    listS3Buckets: (params: ParamsFrom<'listS3Buckets', Record<string, never>>) => Promise<ReturnTypeFrom<'listS3Buckets'>>;
    removeAllBackends: (params: ParamsFrom<'removeAllBackends', Record<string, never>>) => Promise<ReturnTypeFrom<'removeAllBackends'>>;
    removeBackendConfig: (params: ParamsFrom<'removeBackendConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'removeBackendConfig'>>;
    updateBackendAPI: (params: ParamsFrom<'updateBackendAPI', Record<string, never>>) => Promise<ReturnTypeFrom<'updateBackendAPI'>>;
    updateBackendAuth: (params: ParamsFrom<'updateBackendAuth', Record<string, never>>) => Promise<ReturnTypeFrom<'updateBackendAuth'>>;
    updateBackendConfig: (params: ParamsFrom<'updateBackendConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'updateBackendConfig'>>;
    updateBackendJob: (params: ParamsFrom<'updateBackendJob', Record<string, never>>) => Promise<ReturnTypeFrom<'updateBackendJob'>>;
    updateBackendStorage: (params: ParamsFrom<'updateBackendStorage', Record<string, never>>) => Promise<ReturnTypeFrom<'updateBackendStorage'>>;
    static fromClient(client: AWSAmplifyBackend): AmplifyBackend;
    static client(options?: AWSAmplifyBackend.Types.ClientConfiguration): AmplifyBackend;
}
export {};
