import { Request, Detective as AWSDetective } from 'aws-sdk';
declare type ReturnTypeFrom<K extends keyof AWSDetective> = AWSDetective[K] extends (...args: any) => Request<infer R, any> ? R : never;
declare type ParamsFrom<K extends keyof AWSDetective, Extras> = AWSDetective[K] extends {
    (param: infer P, callback: (...args: any) => void): Request<infer R, any>;
    (callback: (...args: any) => void): any;
} ? P & Extras : never;
export declare class Detective {
    private readonly client;
    private constructor();
    readonly signingRegion: undefined;
    readonly service: "detective";
    readonly global: false;
    readonly category: "Other";
    readonly topLevelCalls: readonly ["listGraphs", "listInvitations", "listOrganizationAdminAccounts"];
    acceptInvitation: (params: ParamsFrom<'acceptInvitation', Record<string, never>>) => Promise<ReturnTypeFrom<'acceptInvitation'>>;
    batchGetGraphMemberDatasources: (params: ParamsFrom<'batchGetGraphMemberDatasources', Record<string, never>>) => Promise<ReturnTypeFrom<'batchGetGraphMemberDatasources'>>;
    batchGetMembershipDatasources: (params: ParamsFrom<'batchGetMembershipDatasources', Record<string, never>>) => Promise<ReturnTypeFrom<'batchGetMembershipDatasources'>>;
    createGraph: (params: ParamsFrom<'createGraph', Record<string, never>>) => Promise<ReturnTypeFrom<'createGraph'>>;
    createMembers: (params: ParamsFrom<'createMembers', Record<string, never>>) => Promise<ReturnTypeFrom<'createMembers'>>;
    deleteGraph: (params: ParamsFrom<'deleteGraph', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteGraph'>>;
    deleteMembers: (params: ParamsFrom<'deleteMembers', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteMembers'>>;
    describeOrganizationConfiguration: (params: ParamsFrom<'describeOrganizationConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'describeOrganizationConfiguration'>>;
    disableOrganizationAdminAccount: (params: ParamsFrom<'disableOrganizationAdminAccount', Record<string, never>>) => Promise<ReturnTypeFrom<'disableOrganizationAdminAccount'>>;
    disassociateMembership: (params: ParamsFrom<'disassociateMembership', Record<string, never>>) => Promise<ReturnTypeFrom<'disassociateMembership'>>;
    enableOrganizationAdminAccount: (params: ParamsFrom<'enableOrganizationAdminAccount', Record<string, never>>) => Promise<ReturnTypeFrom<'enableOrganizationAdminAccount'>>;
    getMembers: (params: ParamsFrom<'getMembers', Record<string, never>>) => Promise<ReturnTypeFrom<'getMembers'>>;
    listDatasourcePackages: (params: ParamsFrom<'listDatasourcePackages', Record<string, never>>) => Promise<ReturnTypeFrom<'listDatasourcePackages'>>;
    listGraphs: (params: ParamsFrom<'listGraphs', Record<string, never>>) => Promise<ReturnTypeFrom<'listGraphs'>>;
    listInvitations: (params: ParamsFrom<'listInvitations', Record<string, never>>) => Promise<ReturnTypeFrom<'listInvitations'>>;
    listMembers: (params: ParamsFrom<'listMembers', Record<string, never>>) => Promise<ReturnTypeFrom<'listMembers'>>;
    listOrganizationAdminAccounts: (params: ParamsFrom<'listOrganizationAdminAccounts', Record<string, never>>) => Promise<ReturnTypeFrom<'listOrganizationAdminAccounts'>>;
    listTagsForResource: (params: ParamsFrom<'listTagsForResource', Record<string, never>>) => Promise<ReturnTypeFrom<'listTagsForResource'>>;
    rejectInvitation: (params: ParamsFrom<'rejectInvitation', Record<string, never>>) => Promise<ReturnTypeFrom<'rejectInvitation'>>;
    startMonitoringMember: (params: ParamsFrom<'startMonitoringMember', Record<string, never>>) => Promise<ReturnTypeFrom<'startMonitoringMember'>>;
    tagResource: (params: ParamsFrom<'tagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'tagResource'>>;
    untagResource: (params: ParamsFrom<'untagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'untagResource'>>;
    updateDatasourcePackages: (params: ParamsFrom<'updateDatasourcePackages', Record<string, never>>) => Promise<ReturnTypeFrom<'updateDatasourcePackages'>>;
    updateOrganizationConfiguration: (params: ParamsFrom<'updateOrganizationConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'updateOrganizationConfiguration'>>;
    static fromClient(client: AWSDetective): Detective;
    static client(options?: AWSDetective.Types.ClientConfiguration): Detective;
}
export {};
