import { Request, SSOAdmin as AWSSSOAdmin } from 'aws-sdk';
declare type ReturnTypeFrom<K extends keyof AWSSSOAdmin> = AWSSSOAdmin[K] extends (...args: any) => Request<infer R, any> ? R : never;
declare type ParamsFrom<K extends keyof AWSSSOAdmin, Extras> = AWSSSOAdmin[K] extends {
    (param: infer P, callback: (...args: any) => void): Request<infer R, any>;
    (callback: (...args: any) => void): any;
} ? P & Extras : never;
export declare class SSOAdmin {
    private readonly client;
    private constructor();
    readonly signingRegion: undefined;
    readonly service: "sso";
    readonly global: false;
    readonly category: "Security, Identity & Compliance";
    readonly topLevelCalls: readonly ["listInstances"];
    attachCustomerManagedPolicyReferenceToPermissionSet: (params: ParamsFrom<'attachCustomerManagedPolicyReferenceToPermissionSet', Record<string, never>>) => Promise<ReturnTypeFrom<'attachCustomerManagedPolicyReferenceToPermissionSet'>>;
    attachManagedPolicyToPermissionSet: (params: ParamsFrom<'attachManagedPolicyToPermissionSet', Record<string, never>>) => Promise<ReturnTypeFrom<'attachManagedPolicyToPermissionSet'>>;
    createAccountAssignment: (params: ParamsFrom<'createAccountAssignment', Record<string, never>>) => Promise<ReturnTypeFrom<'createAccountAssignment'>>;
    createInstanceAccessControlAttributeConfiguration: (params: ParamsFrom<'createInstanceAccessControlAttributeConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'createInstanceAccessControlAttributeConfiguration'>>;
    createPermissionSet: (params: ParamsFrom<'createPermissionSet', Record<string, never>>) => Promise<ReturnTypeFrom<'createPermissionSet'>>;
    deleteAccountAssignment: (params: ParamsFrom<'deleteAccountAssignment', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteAccountAssignment'>>;
    deleteInlinePolicyFromPermissionSet: (params: ParamsFrom<'deleteInlinePolicyFromPermissionSet', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteInlinePolicyFromPermissionSet'>>;
    deleteInstanceAccessControlAttributeConfiguration: (params: ParamsFrom<'deleteInstanceAccessControlAttributeConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteInstanceAccessControlAttributeConfiguration'>>;
    deletePermissionSet: (params: ParamsFrom<'deletePermissionSet', Record<string, never>>) => Promise<ReturnTypeFrom<'deletePermissionSet'>>;
    deletePermissionsBoundaryFromPermissionSet: (params: ParamsFrom<'deletePermissionsBoundaryFromPermissionSet', Record<string, never>>) => Promise<ReturnTypeFrom<'deletePermissionsBoundaryFromPermissionSet'>>;
    describeAccountAssignmentCreationStatus: (params: ParamsFrom<'describeAccountAssignmentCreationStatus', Record<string, never>>) => Promise<ReturnTypeFrom<'describeAccountAssignmentCreationStatus'>>;
    describeAccountAssignmentDeletionStatus: (params: ParamsFrom<'describeAccountAssignmentDeletionStatus', Record<string, never>>) => Promise<ReturnTypeFrom<'describeAccountAssignmentDeletionStatus'>>;
    describeInstanceAccessControlAttributeConfiguration: (params: ParamsFrom<'describeInstanceAccessControlAttributeConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'describeInstanceAccessControlAttributeConfiguration'>>;
    describePermissionSet: (params: ParamsFrom<'describePermissionSet', Record<string, never>>) => Promise<ReturnTypeFrom<'describePermissionSet'>>;
    describePermissionSetProvisioningStatus: (params: ParamsFrom<'describePermissionSetProvisioningStatus', Record<string, never>>) => Promise<ReturnTypeFrom<'describePermissionSetProvisioningStatus'>>;
    detachCustomerManagedPolicyReferenceFromPermissionSet: (params: ParamsFrom<'detachCustomerManagedPolicyReferenceFromPermissionSet', Record<string, never>>) => Promise<ReturnTypeFrom<'detachCustomerManagedPolicyReferenceFromPermissionSet'>>;
    detachManagedPolicyFromPermissionSet: (params: ParamsFrom<'detachManagedPolicyFromPermissionSet', Record<string, never>>) => Promise<ReturnTypeFrom<'detachManagedPolicyFromPermissionSet'>>;
    getInlinePolicyForPermissionSet: (params: ParamsFrom<'getInlinePolicyForPermissionSet', Record<string, never>>) => Promise<ReturnTypeFrom<'getInlinePolicyForPermissionSet'>>;
    getPermissionsBoundaryForPermissionSet: (params: ParamsFrom<'getPermissionsBoundaryForPermissionSet', Record<string, never>>) => Promise<ReturnTypeFrom<'getPermissionsBoundaryForPermissionSet'>>;
    listAccountAssignmentCreationStatus(params: {
        [K in keyof ParamsFrom<'listAccountAssignmentCreationStatus', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listAccountAssignmentCreationStatus', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listAccountAssignmentCreationStatus'>]-?: ReturnTypeFrom<'listAccountAssignmentCreationStatus'>[K];
        }['AccountAssignmentsCreationStatus'];
    }>;
    listAccountAssignmentDeletionStatus(params: {
        [K in keyof ParamsFrom<'listAccountAssignmentDeletionStatus', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listAccountAssignmentDeletionStatus', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listAccountAssignmentDeletionStatus'>]-?: ReturnTypeFrom<'listAccountAssignmentDeletionStatus'>[K];
        }['AccountAssignmentsDeletionStatus'];
    }>;
    listAccountAssignments(params: {
        [K in keyof ParamsFrom<'listAccountAssignments', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listAccountAssignments', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listAccountAssignments'>]-?: ReturnTypeFrom<'listAccountAssignments'>[K];
        }['AccountAssignments'];
    }>;
    listAccountsForProvisionedPermissionSet(params: {
        [K in keyof ParamsFrom<'listAccountsForProvisionedPermissionSet', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listAccountsForProvisionedPermissionSet', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listAccountsForProvisionedPermissionSet'>]-?: ReturnTypeFrom<'listAccountsForProvisionedPermissionSet'>[K];
        }['AccountIds'];
    }>;
    listCustomerManagedPolicyReferencesInPermissionSet(params: {
        [K in keyof ParamsFrom<'listCustomerManagedPolicyReferencesInPermissionSet', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listCustomerManagedPolicyReferencesInPermissionSet', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listCustomerManagedPolicyReferencesInPermissionSet'>]-?: ReturnTypeFrom<'listCustomerManagedPolicyReferencesInPermissionSet'>[K];
        }['CustomerManagedPolicyReferences'];
    }>;
    listInstances(params: {
        [K in keyof ParamsFrom<'listInstances', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listInstances', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listInstances'>]-?: ReturnTypeFrom<'listInstances'>[K];
        }['Instances'];
    }>;
    listManagedPoliciesInPermissionSet(params: {
        [K in keyof ParamsFrom<'listManagedPoliciesInPermissionSet', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listManagedPoliciesInPermissionSet', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listManagedPoliciesInPermissionSet'>]-?: ReturnTypeFrom<'listManagedPoliciesInPermissionSet'>[K];
        }['AttachedManagedPolicies'];
    }>;
    listPermissionSetProvisioningStatus(params: {
        [K in keyof ParamsFrom<'listPermissionSetProvisioningStatus', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listPermissionSetProvisioningStatus', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listPermissionSetProvisioningStatus'>]-?: ReturnTypeFrom<'listPermissionSetProvisioningStatus'>[K];
        }['PermissionSetsProvisioningStatus'];
    }>;
    listPermissionSets(params: {
        [K in keyof ParamsFrom<'listPermissionSets', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listPermissionSets', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listPermissionSets'>]-?: ReturnTypeFrom<'listPermissionSets'>[K];
        }['PermissionSets'];
    }>;
    listPermissionSetsProvisionedToAccount(params: {
        [K in keyof ParamsFrom<'listPermissionSetsProvisionedToAccount', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listPermissionSetsProvisionedToAccount', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listPermissionSetsProvisionedToAccount'>]-?: ReturnTypeFrom<'listPermissionSetsProvisionedToAccount'>[K];
        }['PermissionSets'];
    }>;
    listTagsForResource(params: {
        [K in keyof ParamsFrom<'listTagsForResource', {
            next?: string;
        }>]: ParamsFrom<'listTagsForResource', {
            next?: string;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listTagsForResource'>]-?: ReturnTypeFrom<'listTagsForResource'>[K];
        }['Tags'];
    }>;
    provisionPermissionSet: (params: ParamsFrom<'provisionPermissionSet', Record<string, never>>) => Promise<ReturnTypeFrom<'provisionPermissionSet'>>;
    putInlinePolicyToPermissionSet: (params: ParamsFrom<'putInlinePolicyToPermissionSet', Record<string, never>>) => Promise<ReturnTypeFrom<'putInlinePolicyToPermissionSet'>>;
    putPermissionsBoundaryToPermissionSet: (params: ParamsFrom<'putPermissionsBoundaryToPermissionSet', Record<string, never>>) => Promise<ReturnTypeFrom<'putPermissionsBoundaryToPermissionSet'>>;
    tagResource: (params: ParamsFrom<'tagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'tagResource'>>;
    untagResource: (params: ParamsFrom<'untagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'untagResource'>>;
    updateInstanceAccessControlAttributeConfiguration: (params: ParamsFrom<'updateInstanceAccessControlAttributeConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'updateInstanceAccessControlAttributeConfiguration'>>;
    updatePermissionSet: (params: ParamsFrom<'updatePermissionSet', Record<string, never>>) => Promise<ReturnTypeFrom<'updatePermissionSet'>>;
    static fromClient(client: AWSSSOAdmin): SSOAdmin;
    static client(options?: AWSSSOAdmin.Types.ClientConfiguration): SSOAdmin;
}
export {};
