import { Request, Lambda as AWSLambda } from 'aws-sdk';
declare type ReturnTypeFrom<K extends keyof AWSLambda> = AWSLambda[K] extends (...args: any) => Request<infer R, any> ? R : never;
declare type ParamsFrom<K extends keyof AWSLambda, Extras> = AWSLambda[K] extends {
    (param: infer P, callback: (...args: any) => void): Request<infer R, any>;
    (callback: (...args: any) => void): any;
} ? P & Extras : never;
export declare class Lambda {
    private readonly client;
    private constructor();
    readonly signingRegion: undefined;
    readonly service: "lambda";
    readonly global: false;
    readonly category: "Compute";
    readonly topLevelCalls: readonly ["listCodeSigningConfigs", "listEventSourceMappings", "listFunctions", "listLayers"];
    addLayerVersionPermission: (params: ParamsFrom<'addLayerVersionPermission', Record<string, never>>) => Promise<ReturnTypeFrom<'addLayerVersionPermission'>>;
    addPermission: (params: ParamsFrom<'addPermission', Record<string, never>>) => Promise<ReturnTypeFrom<'addPermission'>>;
    createAlias: (params: ParamsFrom<'createAlias', Record<string, never>>) => Promise<ReturnTypeFrom<'createAlias'>>;
    createCodeSigningConfig: (params: ParamsFrom<'createCodeSigningConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'createCodeSigningConfig'>>;
    createEventSourceMapping: (params: ParamsFrom<'createEventSourceMapping', Record<string, never>>) => Promise<ReturnTypeFrom<'createEventSourceMapping'>>;
    createFunction: (params: ParamsFrom<'createFunction', Record<string, never>>) => Promise<ReturnTypeFrom<'createFunction'>>;
    createFunctionUrlConfig: (params: ParamsFrom<'createFunctionUrlConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'createFunctionUrlConfig'>>;
    deleteAlias: (params: ParamsFrom<'deleteAlias', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteAlias'>>;
    deleteCodeSigningConfig: (params: ParamsFrom<'deleteCodeSigningConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteCodeSigningConfig'>>;
    deleteEventSourceMapping: (params: ParamsFrom<'deleteEventSourceMapping', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteEventSourceMapping'>>;
    deleteFunction: (params: ParamsFrom<'deleteFunction', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteFunction'>>;
    deleteFunctionCodeSigningConfig: (params: ParamsFrom<'deleteFunctionCodeSigningConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteFunctionCodeSigningConfig'>>;
    deleteFunctionConcurrency: (params: ParamsFrom<'deleteFunctionConcurrency', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteFunctionConcurrency'>>;
    deleteFunctionEventInvokeConfig: (params: ParamsFrom<'deleteFunctionEventInvokeConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteFunctionEventInvokeConfig'>>;
    deleteFunctionUrlConfig: (params: ParamsFrom<'deleteFunctionUrlConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteFunctionUrlConfig'>>;
    deleteLayerVersion: (params: ParamsFrom<'deleteLayerVersion', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteLayerVersion'>>;
    deleteProvisionedConcurrencyConfig: (params: ParamsFrom<'deleteProvisionedConcurrencyConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteProvisionedConcurrencyConfig'>>;
    getAccountSettings: (params: ParamsFrom<'getAccountSettings', Record<string, never>>) => Promise<ReturnTypeFrom<'getAccountSettings'>>;
    getAlias: (params: ParamsFrom<'getAlias', Record<string, never>>) => Promise<ReturnTypeFrom<'getAlias'>>;
    getCodeSigningConfig: (params: ParamsFrom<'getCodeSigningConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'getCodeSigningConfig'>>;
    getEventSourceMapping: (params: ParamsFrom<'getEventSourceMapping', Record<string, never>>) => Promise<ReturnTypeFrom<'getEventSourceMapping'>>;
    getFunction: (params: ParamsFrom<'getFunction', Record<string, never>>) => Promise<ReturnTypeFrom<'getFunction'>>;
    getFunctionCodeSigningConfig: (params: ParamsFrom<'getFunctionCodeSigningConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'getFunctionCodeSigningConfig'>>;
    getFunctionConcurrency: (params: ParamsFrom<'getFunctionConcurrency', Record<string, never>>) => Promise<ReturnTypeFrom<'getFunctionConcurrency'>>;
    getFunctionConfiguration: (params: ParamsFrom<'getFunctionConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'getFunctionConfiguration'>>;
    getFunctionEventInvokeConfig: (params: ParamsFrom<'getFunctionEventInvokeConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'getFunctionEventInvokeConfig'>>;
    getFunctionUrlConfig: (params: ParamsFrom<'getFunctionUrlConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'getFunctionUrlConfig'>>;
    getLayerVersion: (params: ParamsFrom<'getLayerVersion', Record<string, never>>) => Promise<ReturnTypeFrom<'getLayerVersion'>>;
    getLayerVersionByArn: (params: ParamsFrom<'getLayerVersionByArn', Record<string, never>>) => Promise<ReturnTypeFrom<'getLayerVersionByArn'>>;
    getLayerVersionPolicy: (params: ParamsFrom<'getLayerVersionPolicy', Record<string, never>>) => Promise<ReturnTypeFrom<'getLayerVersionPolicy'>>;
    getPolicy: (params: ParamsFrom<'getPolicy', Record<string, never>>) => Promise<ReturnTypeFrom<'getPolicy'>>;
    getProvisionedConcurrencyConfig: (params: ParamsFrom<'getProvisionedConcurrencyConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'getProvisionedConcurrencyConfig'>>;
    invoke: (params: ParamsFrom<'invoke', Record<string, never>>) => Promise<ReturnTypeFrom<'invoke'>>;
    invokeAsync: (params: ParamsFrom<'invokeAsync', Record<string, never>>) => Promise<ReturnTypeFrom<'invokeAsync'>>;
    listAliases(params: {
        [K in keyof ParamsFrom<'listAliases', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listAliases', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listAliases'>]-?: ReturnTypeFrom<'listAliases'>[K];
        }['Aliases'];
    }>;
    listCodeSigningConfigs(params: {
        [K in keyof ParamsFrom<'listCodeSigningConfigs', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listCodeSigningConfigs', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listCodeSigningConfigs'>]-?: ReturnTypeFrom<'listCodeSigningConfigs'>[K];
        }['CodeSigningConfigs'];
    }>;
    listEventSourceMappings(params: {
        [K in keyof ParamsFrom<'listEventSourceMappings', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listEventSourceMappings', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listEventSourceMappings'>]-?: ReturnTypeFrom<'listEventSourceMappings'>[K];
        }['EventSourceMappings'];
    }>;
    listFunctionEventInvokeConfigs(params: {
        [K in keyof ParamsFrom<'listFunctionEventInvokeConfigs', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listFunctionEventInvokeConfigs', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listFunctionEventInvokeConfigs'>]-?: ReturnTypeFrom<'listFunctionEventInvokeConfigs'>[K];
        }['FunctionEventInvokeConfigs'];
    }>;
    listFunctionUrlConfigs(params: {
        [K in keyof ParamsFrom<'listFunctionUrlConfigs', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listFunctionUrlConfigs', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listFunctionUrlConfigs'>]-?: ReturnTypeFrom<'listFunctionUrlConfigs'>[K];
        }['FunctionUrlConfigs'];
    }>;
    listFunctions(params: {
        [K in keyof ParamsFrom<'listFunctions', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listFunctions', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listFunctions'>]-?: ReturnTypeFrom<'listFunctions'>[K];
        }['Functions'];
    }>;
    listFunctionsByCodeSigningConfig(params: {
        [K in keyof ParamsFrom<'listFunctionsByCodeSigningConfig', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listFunctionsByCodeSigningConfig', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listFunctionsByCodeSigningConfig'>]-?: ReturnTypeFrom<'listFunctionsByCodeSigningConfig'>[K];
        }['FunctionArns'];
    }>;
    listLayerVersions(params: {
        [K in keyof ParamsFrom<'listLayerVersions', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listLayerVersions', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listLayerVersions'>]-?: ReturnTypeFrom<'listLayerVersions'>[K];
        }['LayerVersions'];
    }>;
    listLayers(params: {
        [K in keyof ParamsFrom<'listLayers', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listLayers', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listLayers'>]-?: ReturnTypeFrom<'listLayers'>[K];
        }['Layers'];
    }>;
    listProvisionedConcurrencyConfigs(params: {
        [K in keyof ParamsFrom<'listProvisionedConcurrencyConfigs', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listProvisionedConcurrencyConfigs', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listProvisionedConcurrencyConfigs'>]-?: ReturnTypeFrom<'listProvisionedConcurrencyConfigs'>[K];
        }['ProvisionedConcurrencyConfigs'];
    }>;
    listTags: (params: ParamsFrom<'listTags', Record<string, never>>) => Promise<ReturnTypeFrom<'listTags'>>;
    listVersionsByFunction(params: {
        [K in keyof ParamsFrom<'listVersionsByFunction', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listVersionsByFunction', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listVersionsByFunction'>]-?: ReturnTypeFrom<'listVersionsByFunction'>[K];
        }['Versions'];
    }>;
    publishLayerVersion: (params: ParamsFrom<'publishLayerVersion', Record<string, never>>) => Promise<ReturnTypeFrom<'publishLayerVersion'>>;
    publishVersion: (params: ParamsFrom<'publishVersion', Record<string, never>>) => Promise<ReturnTypeFrom<'publishVersion'>>;
    putFunctionCodeSigningConfig: (params: ParamsFrom<'putFunctionCodeSigningConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'putFunctionCodeSigningConfig'>>;
    putFunctionConcurrency: (params: ParamsFrom<'putFunctionConcurrency', Record<string, never>>) => Promise<ReturnTypeFrom<'putFunctionConcurrency'>>;
    putFunctionEventInvokeConfig: (params: ParamsFrom<'putFunctionEventInvokeConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'putFunctionEventInvokeConfig'>>;
    putProvisionedConcurrencyConfig: (params: ParamsFrom<'putProvisionedConcurrencyConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'putProvisionedConcurrencyConfig'>>;
    removeLayerVersionPermission: (params: ParamsFrom<'removeLayerVersionPermission', Record<string, never>>) => Promise<ReturnTypeFrom<'removeLayerVersionPermission'>>;
    removePermission: (params: ParamsFrom<'removePermission', Record<string, never>>) => Promise<ReturnTypeFrom<'removePermission'>>;
    tagResource: (params: ParamsFrom<'tagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'tagResource'>>;
    untagResource: (params: ParamsFrom<'untagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'untagResource'>>;
    updateAlias: (params: ParamsFrom<'updateAlias', Record<string, never>>) => Promise<ReturnTypeFrom<'updateAlias'>>;
    updateCodeSigningConfig: (params: ParamsFrom<'updateCodeSigningConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'updateCodeSigningConfig'>>;
    updateEventSourceMapping: (params: ParamsFrom<'updateEventSourceMapping', Record<string, never>>) => Promise<ReturnTypeFrom<'updateEventSourceMapping'>>;
    updateFunctionCode: (params: ParamsFrom<'updateFunctionCode', Record<string, never>>) => Promise<ReturnTypeFrom<'updateFunctionCode'>>;
    updateFunctionConfiguration: (params: ParamsFrom<'updateFunctionConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'updateFunctionConfiguration'>>;
    updateFunctionEventInvokeConfig: (params: ParamsFrom<'updateFunctionEventInvokeConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'updateFunctionEventInvokeConfig'>>;
    updateFunctionUrlConfig: (params: ParamsFrom<'updateFunctionUrlConfig', Record<string, never>>) => Promise<ReturnTypeFrom<'updateFunctionUrlConfig'>>;
    static fromClient(client: AWSLambda): Lambda;
    static client(options?: AWSLambda.Types.ClientConfiguration): Lambda;
}
export {};
