import { Request, SSMIncidents as AWSSSMIncidents } from 'aws-sdk';
declare type ReturnTypeFrom<K extends keyof AWSSSMIncidents> = AWSSSMIncidents[K] extends (...args: any) => Request<infer R, any> ? R : never;
declare type ParamsFrom<K extends keyof AWSSSMIncidents, Extras> = AWSSSMIncidents[K] extends {
    (param: infer P, callback: (...args: any) => void): Request<infer R, any>;
    (callback: (...args: any) => void): any;
} ? P & Extras : never;
export declare class SSMIncidents {
    private readonly client;
    private constructor();
    readonly signingRegion: undefined;
    readonly service: "ssm-incidents";
    readonly global: false;
    readonly category: "Management and Governance";
    readonly topLevelCalls: readonly ["listIncidentRecords", "listReplicationSets", "listResponsePlans"];
    createReplicationSet: (params: ParamsFrom<'createReplicationSet', Record<string, never>>) => Promise<ReturnTypeFrom<'createReplicationSet'>>;
    createResponsePlan: (params: ParamsFrom<'createResponsePlan', Record<string, never>>) => Promise<ReturnTypeFrom<'createResponsePlan'>>;
    createTimelineEvent: (params: ParamsFrom<'createTimelineEvent', Record<string, never>>) => Promise<ReturnTypeFrom<'createTimelineEvent'>>;
    deleteIncidentRecord: (params: ParamsFrom<'deleteIncidentRecord', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteIncidentRecord'>>;
    deleteReplicationSet: (params: ParamsFrom<'deleteReplicationSet', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteReplicationSet'>>;
    deleteResourcePolicy: (params: ParamsFrom<'deleteResourcePolicy', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteResourcePolicy'>>;
    deleteResponsePlan: (params: ParamsFrom<'deleteResponsePlan', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteResponsePlan'>>;
    deleteTimelineEvent: (params: ParamsFrom<'deleteTimelineEvent', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteTimelineEvent'>>;
    getIncidentRecord: (params: ParamsFrom<'getIncidentRecord', Record<string, never>>) => Promise<ReturnTypeFrom<'getIncidentRecord'>>;
    getReplicationSet: (params: ParamsFrom<'getReplicationSet', Record<string, never>>) => Promise<ReturnTypeFrom<'getReplicationSet'>>;
    getResourcePolicies(params: {
        [K in keyof ParamsFrom<'getResourcePolicies', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'getResourcePolicies', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'getResourcePolicies'>]-?: ReturnTypeFrom<'getResourcePolicies'>[K];
        }['resourcePolicies'];
    }>;
    getResponsePlan: (params: ParamsFrom<'getResponsePlan', Record<string, never>>) => Promise<ReturnTypeFrom<'getResponsePlan'>>;
    getTimelineEvent: (params: ParamsFrom<'getTimelineEvent', Record<string, never>>) => Promise<ReturnTypeFrom<'getTimelineEvent'>>;
    listIncidentRecords(params: {
        [K in keyof ParamsFrom<'listIncidentRecords', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listIncidentRecords', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listIncidentRecords'>]-?: ReturnTypeFrom<'listIncidentRecords'>[K];
        }['incidentRecordSummaries'];
    }>;
    listRelatedItems(params: {
        [K in keyof ParamsFrom<'listRelatedItems', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listRelatedItems', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listRelatedItems'>]-?: ReturnTypeFrom<'listRelatedItems'>[K];
        }['relatedItems'];
    }>;
    listReplicationSets(params: {
        [K in keyof ParamsFrom<'listReplicationSets', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listReplicationSets', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listReplicationSets'>]-?: ReturnTypeFrom<'listReplicationSets'>[K];
        }['replicationSetArns'];
    }>;
    listResponsePlans(params: {
        [K in keyof ParamsFrom<'listResponsePlans', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listResponsePlans', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listResponsePlans'>]-?: ReturnTypeFrom<'listResponsePlans'>[K];
        }['responsePlanSummaries'];
    }>;
    listTagsForResource: (params: ParamsFrom<'listTagsForResource', Record<string, never>>) => Promise<ReturnTypeFrom<'listTagsForResource'>>;
    listTimelineEvents(params: {
        [K in keyof ParamsFrom<'listTimelineEvents', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listTimelineEvents', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listTimelineEvents'>]-?: ReturnTypeFrom<'listTimelineEvents'>[K];
        }['eventSummaries'];
    }>;
    putResourcePolicy: (params: ParamsFrom<'putResourcePolicy', Record<string, never>>) => Promise<ReturnTypeFrom<'putResourcePolicy'>>;
    startIncident: (params: ParamsFrom<'startIncident', Record<string, never>>) => Promise<ReturnTypeFrom<'startIncident'>>;
    tagResource: (params: ParamsFrom<'tagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'tagResource'>>;
    untagResource: (params: ParamsFrom<'untagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'untagResource'>>;
    updateDeletionProtection: (params: ParamsFrom<'updateDeletionProtection', Record<string, never>>) => Promise<ReturnTypeFrom<'updateDeletionProtection'>>;
    updateIncidentRecord: (params: ParamsFrom<'updateIncidentRecord', Record<string, never>>) => Promise<ReturnTypeFrom<'updateIncidentRecord'>>;
    updateRelatedItems: (params: ParamsFrom<'updateRelatedItems', Record<string, never>>) => Promise<ReturnTypeFrom<'updateRelatedItems'>>;
    updateReplicationSet: (params: ParamsFrom<'updateReplicationSet', Record<string, never>>) => Promise<ReturnTypeFrom<'updateReplicationSet'>>;
    updateResponsePlan: (params: ParamsFrom<'updateResponsePlan', Record<string, never>>) => Promise<ReturnTypeFrom<'updateResponsePlan'>>;
    updateTimelineEvent: (params: ParamsFrom<'updateTimelineEvent', Record<string, never>>) => Promise<ReturnTypeFrom<'updateTimelineEvent'>>;
    static fromClient(client: AWSSSMIncidents): SSMIncidents;
    static client(options?: AWSSSMIncidents.Types.ClientConfiguration): SSMIncidents;
}
export {};
