import { Request, SupportApp as AWSSupportApp } from 'aws-sdk';
declare type ReturnTypeFrom<K extends keyof AWSSupportApp> = AWSSupportApp[K] extends (...args: any) => Request<infer R, any> ? R : never;
declare type ParamsFrom<K extends keyof AWSSupportApp, Extras> = AWSSupportApp[K] extends {
    (param: infer P, callback: (...args: any) => void): Request<infer R, any>;
    (callback: (...args: any) => void): any;
} ? P & Extras : never;
export declare class SupportApp {
    private readonly client;
    private constructor();
    readonly signingRegion: undefined;
    readonly service: "supportapp";
    readonly global: false;
    readonly category: "Other";
    readonly topLevelCalls: readonly ["listSlackChannelConfigurations", "listSlackWorkspaceConfigurations"];
    createSlackChannelConfiguration: (params: ParamsFrom<'createSlackChannelConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'createSlackChannelConfiguration'>>;
    deleteAccountAlias: (params: ParamsFrom<'deleteAccountAlias', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteAccountAlias'>>;
    deleteSlackChannelConfiguration: (params: ParamsFrom<'deleteSlackChannelConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteSlackChannelConfiguration'>>;
    deleteSlackWorkspaceConfiguration: (params: ParamsFrom<'deleteSlackWorkspaceConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteSlackWorkspaceConfiguration'>>;
    getAccountAlias: (params: ParamsFrom<'getAccountAlias', Record<string, never>>) => Promise<ReturnTypeFrom<'getAccountAlias'>>;
    listSlackChannelConfigurations: (params: ParamsFrom<'listSlackChannelConfigurations', Record<string, never>>) => Promise<ReturnTypeFrom<'listSlackChannelConfigurations'>>;
    listSlackWorkspaceConfigurations: (params: ParamsFrom<'listSlackWorkspaceConfigurations', Record<string, never>>) => Promise<ReturnTypeFrom<'listSlackWorkspaceConfigurations'>>;
    putAccountAlias: (params: ParamsFrom<'putAccountAlias', Record<string, never>>) => Promise<ReturnTypeFrom<'putAccountAlias'>>;
    updateSlackChannelConfiguration: (params: ParamsFrom<'updateSlackChannelConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'updateSlackChannelConfiguration'>>;
    static fromClient(client: AWSSupportApp): SupportApp;
    static client(options?: AWSSupportApp.Types.ClientConfiguration): SupportApp;
}
export {};
