import { Request, StepFunctions as AWSStepFunctions } from 'aws-sdk';
declare type ReturnTypeFrom<K extends keyof AWSStepFunctions> = AWSStepFunctions[K] extends (...args: any) => Request<infer R, any> ? R : never;
declare type ParamsFrom<K extends keyof AWSStepFunctions, Extras> = AWSStepFunctions[K] extends {
    (param: infer P, callback: (...args: any) => void): Request<infer R, any>;
    (callback: (...args: any) => void): any;
} ? P & Extras : never;
export declare class StepFunctions {
    private readonly client;
    private constructor();
    readonly signingRegion: undefined;
    readonly service: "states";
    readonly global: false;
    readonly category: "Application Integration";
    readonly topLevelCalls: readonly ["listActivities", "listStateMachines"];
    createActivity: (params: ParamsFrom<'createActivity', Record<string, never>>) => Promise<ReturnTypeFrom<'createActivity'>>;
    createStateMachine: (params: ParamsFrom<'createStateMachine', Record<string, never>>) => Promise<ReturnTypeFrom<'createStateMachine'>>;
    deleteActivity: (params: ParamsFrom<'deleteActivity', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteActivity'>>;
    deleteStateMachine: (params: ParamsFrom<'deleteStateMachine', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteStateMachine'>>;
    describeActivity: (params: ParamsFrom<'describeActivity', Record<string, never>>) => Promise<ReturnTypeFrom<'describeActivity'>>;
    describeExecution: (params: ParamsFrom<'describeExecution', Record<string, never>>) => Promise<ReturnTypeFrom<'describeExecution'>>;
    describeStateMachine: (params: ParamsFrom<'describeStateMachine', Record<string, never>>) => Promise<ReturnTypeFrom<'describeStateMachine'>>;
    describeStateMachineForExecution: (params: ParamsFrom<'describeStateMachineForExecution', Record<string, never>>) => Promise<ReturnTypeFrom<'describeStateMachineForExecution'>>;
    getActivityTask: (params: ParamsFrom<'getActivityTask', Record<string, never>>) => Promise<ReturnTypeFrom<'getActivityTask'>>;
    getExecutionHistory(params: {
        [K in keyof ParamsFrom<'getExecutionHistory', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'getExecutionHistory', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'getExecutionHistory'>]-?: ReturnTypeFrom<'getExecutionHistory'>[K];
        }['events'];
    }>;
    listActivities(params: {
        [K in keyof ParamsFrom<'listActivities', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listActivities', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listActivities'>]-?: ReturnTypeFrom<'listActivities'>[K];
        }['activities'];
    }>;
    listExecutions(params: {
        [K in keyof ParamsFrom<'listExecutions', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listExecutions', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listExecutions'>]-?: ReturnTypeFrom<'listExecutions'>[K];
        }['executions'];
    }>;
    listStateMachines(params: {
        [K in keyof ParamsFrom<'listStateMachines', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listStateMachines', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listStateMachines'>]-?: ReturnTypeFrom<'listStateMachines'>[K];
        }['stateMachines'];
    }>;
    listTagsForResource: (params: ParamsFrom<'listTagsForResource', Record<string, never>>) => Promise<ReturnTypeFrom<'listTagsForResource'>>;
    sendTaskFailure: (params: ParamsFrom<'sendTaskFailure', Record<string, never>>) => Promise<ReturnTypeFrom<'sendTaskFailure'>>;
    sendTaskHeartbeat: (params: ParamsFrom<'sendTaskHeartbeat', Record<string, never>>) => Promise<ReturnTypeFrom<'sendTaskHeartbeat'>>;
    sendTaskSuccess: (params: ParamsFrom<'sendTaskSuccess', Record<string, never>>) => Promise<ReturnTypeFrom<'sendTaskSuccess'>>;
    startExecution: (params: ParamsFrom<'startExecution', Record<string, never>>) => Promise<ReturnTypeFrom<'startExecution'>>;
    startSyncExecution: (params: ParamsFrom<'startSyncExecution', Record<string, never>>) => Promise<ReturnTypeFrom<'startSyncExecution'>>;
    stopExecution: (params: ParamsFrom<'stopExecution', Record<string, never>>) => Promise<ReturnTypeFrom<'stopExecution'>>;
    tagResource: (params: ParamsFrom<'tagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'tagResource'>>;
    untagResource: (params: ParamsFrom<'untagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'untagResource'>>;
    updateStateMachine: (params: ParamsFrom<'updateStateMachine', Record<string, never>>) => Promise<ReturnTypeFrom<'updateStateMachine'>>;
    static fromClient(client: AWSStepFunctions): StepFunctions;
    static client(options?: AWSStepFunctions.Types.ClientConfiguration): StepFunctions;
}
export {};
