import { Request, Amp as AWSAmp } from 'aws-sdk';
declare type ReturnTypeFrom<K extends keyof AWSAmp> = AWSAmp[K] extends (...args: any) => Request<infer R, any> ? R : never;
declare type ParamsFrom<K extends keyof AWSAmp, Extras> = AWSAmp[K] extends {
    (param: infer P, callback: (...args: any) => void): Request<infer R, any>;
    (callback: (...args: any) => void): any;
} ? P & Extras : never;
export declare class Amp {
    private readonly client;
    private constructor();
    readonly signingRegion: undefined;
    readonly service: "aps";
    readonly global: false;
    readonly category: "End User Computing";
    readonly topLevelCalls: readonly ["listWorkspaces"];
    createAlertManagerDefinition: (params: ParamsFrom<'createAlertManagerDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'createAlertManagerDefinition'>>;
    createLoggingConfiguration: (params: ParamsFrom<'createLoggingConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'createLoggingConfiguration'>>;
    createRuleGroupsNamespace: (params: ParamsFrom<'createRuleGroupsNamespace', Record<string, never>>) => Promise<ReturnTypeFrom<'createRuleGroupsNamespace'>>;
    createWorkspace: (params: ParamsFrom<'createWorkspace', Record<string, never>>) => Promise<ReturnTypeFrom<'createWorkspace'>>;
    deleteAlertManagerDefinition: (params: ParamsFrom<'deleteAlertManagerDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteAlertManagerDefinition'>>;
    deleteLoggingConfiguration: (params: ParamsFrom<'deleteLoggingConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteLoggingConfiguration'>>;
    deleteRuleGroupsNamespace: (params: ParamsFrom<'deleteRuleGroupsNamespace', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteRuleGroupsNamespace'>>;
    deleteWorkspace: (params: ParamsFrom<'deleteWorkspace', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteWorkspace'>>;
    describeAlertManagerDefinition: (params: ParamsFrom<'describeAlertManagerDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'describeAlertManagerDefinition'>>;
    describeLoggingConfiguration: (params: ParamsFrom<'describeLoggingConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'describeLoggingConfiguration'>>;
    describeRuleGroupsNamespace: (params: ParamsFrom<'describeRuleGroupsNamespace', Record<string, never>>) => Promise<ReturnTypeFrom<'describeRuleGroupsNamespace'>>;
    describeWorkspace: (params: ParamsFrom<'describeWorkspace', Record<string, never>>) => Promise<ReturnTypeFrom<'describeWorkspace'>>;
    listRuleGroupsNamespaces(params: {
        [K in keyof ParamsFrom<'listRuleGroupsNamespaces', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listRuleGroupsNamespaces', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listRuleGroupsNamespaces'>]-?: ReturnTypeFrom<'listRuleGroupsNamespaces'>[K];
        }['ruleGroupsNamespaces'];
    }>;
    listTagsForResource: (params: ParamsFrom<'listTagsForResource', Record<string, never>>) => Promise<ReturnTypeFrom<'listTagsForResource'>>;
    listWorkspaces(params: {
        [K in keyof ParamsFrom<'listWorkspaces', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listWorkspaces', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listWorkspaces'>]-?: ReturnTypeFrom<'listWorkspaces'>[K];
        }['workspaces'];
    }>;
    putAlertManagerDefinition: (params: ParamsFrom<'putAlertManagerDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'putAlertManagerDefinition'>>;
    putRuleGroupsNamespace: (params: ParamsFrom<'putRuleGroupsNamespace', Record<string, never>>) => Promise<ReturnTypeFrom<'putRuleGroupsNamespace'>>;
    tagResource: (params: ParamsFrom<'tagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'tagResource'>>;
    untagResource: (params: ParamsFrom<'untagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'untagResource'>>;
    updateLoggingConfiguration: (params: ParamsFrom<'updateLoggingConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'updateLoggingConfiguration'>>;
    updateWorkspaceAlias: (params: ParamsFrom<'updateWorkspaceAlias', Record<string, never>>) => Promise<ReturnTypeFrom<'updateWorkspaceAlias'>>;
    static fromClient(client: AWSAmp): Amp;
    static client(options?: AWSAmp.Types.ClientConfiguration): Amp;
}
export {};
