import { Request, CloudDirectory as AWSCloudDirectory } from 'aws-sdk';
declare type ReturnTypeFrom<K extends keyof AWSCloudDirectory> = AWSCloudDirectory[K] extends (...args: any) => Request<infer R, any> ? R : never;
declare type ParamsFrom<K extends keyof AWSCloudDirectory, Extras> = AWSCloudDirectory[K] extends {
    (param: infer P, callback: (...args: any) => void): Request<infer R, any>;
    (callback: (...args: any) => void): any;
} ? P & Extras : never;
export declare class CloudDirectory {
    private readonly client;
    private constructor();
    readonly signingRegion: undefined;
    readonly service: "clouddirectory";
    readonly global: false;
    readonly category: "Storage";
    readonly topLevelCalls: readonly ["listDevelopmentSchemaArns", "listDirectories", "listManagedSchemaArns", "listPublishedSchemaArns"];
    addFacetToObject: (params: ParamsFrom<'addFacetToObject', Record<string, never>>) => Promise<ReturnTypeFrom<'addFacetToObject'>>;
    applySchema: (params: ParamsFrom<'applySchema', Record<string, never>>) => Promise<ReturnTypeFrom<'applySchema'>>;
    attachObject: (params: ParamsFrom<'attachObject', Record<string, never>>) => Promise<ReturnTypeFrom<'attachObject'>>;
    attachPolicy: (params: ParamsFrom<'attachPolicy', Record<string, never>>) => Promise<ReturnTypeFrom<'attachPolicy'>>;
    attachToIndex: (params: ParamsFrom<'attachToIndex', Record<string, never>>) => Promise<ReturnTypeFrom<'attachToIndex'>>;
    attachTypedLink: (params: ParamsFrom<'attachTypedLink', Record<string, never>>) => Promise<ReturnTypeFrom<'attachTypedLink'>>;
    batchRead: (params: ParamsFrom<'batchRead', Record<string, never>>) => Promise<ReturnTypeFrom<'batchRead'>>;
    batchWrite: (params: ParamsFrom<'batchWrite', Record<string, never>>) => Promise<ReturnTypeFrom<'batchWrite'>>;
    createDirectory: (params: ParamsFrom<'createDirectory', Record<string, never>>) => Promise<ReturnTypeFrom<'createDirectory'>>;
    createFacet: (params: ParamsFrom<'createFacet', Record<string, never>>) => Promise<ReturnTypeFrom<'createFacet'>>;
    createIndex: (params: ParamsFrom<'createIndex', Record<string, never>>) => Promise<ReturnTypeFrom<'createIndex'>>;
    createObject: (params: ParamsFrom<'createObject', Record<string, never>>) => Promise<ReturnTypeFrom<'createObject'>>;
    createSchema: (params: ParamsFrom<'createSchema', Record<string, never>>) => Promise<ReturnTypeFrom<'createSchema'>>;
    createTypedLinkFacet: (params: ParamsFrom<'createTypedLinkFacet', Record<string, never>>) => Promise<ReturnTypeFrom<'createTypedLinkFacet'>>;
    deleteDirectory: (params: ParamsFrom<'deleteDirectory', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteDirectory'>>;
    deleteFacet: (params: ParamsFrom<'deleteFacet', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteFacet'>>;
    deleteObject: (params: ParamsFrom<'deleteObject', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteObject'>>;
    deleteSchema: (params: ParamsFrom<'deleteSchema', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteSchema'>>;
    deleteTypedLinkFacet: (params: ParamsFrom<'deleteTypedLinkFacet', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteTypedLinkFacet'>>;
    detachFromIndex: (params: ParamsFrom<'detachFromIndex', Record<string, never>>) => Promise<ReturnTypeFrom<'detachFromIndex'>>;
    detachObject: (params: ParamsFrom<'detachObject', Record<string, never>>) => Promise<ReturnTypeFrom<'detachObject'>>;
    detachPolicy: (params: ParamsFrom<'detachPolicy', Record<string, never>>) => Promise<ReturnTypeFrom<'detachPolicy'>>;
    detachTypedLink: (params: ParamsFrom<'detachTypedLink', Record<string, never>>) => Promise<ReturnTypeFrom<'detachTypedLink'>>;
    disableDirectory: (params: ParamsFrom<'disableDirectory', Record<string, never>>) => Promise<ReturnTypeFrom<'disableDirectory'>>;
    enableDirectory: (params: ParamsFrom<'enableDirectory', Record<string, never>>) => Promise<ReturnTypeFrom<'enableDirectory'>>;
    getAppliedSchemaVersion: (params: ParamsFrom<'getAppliedSchemaVersion', Record<string, never>>) => Promise<ReturnTypeFrom<'getAppliedSchemaVersion'>>;
    getDirectory: (params: ParamsFrom<'getDirectory', Record<string, never>>) => Promise<ReturnTypeFrom<'getDirectory'>>;
    getFacet: (params: ParamsFrom<'getFacet', Record<string, never>>) => Promise<ReturnTypeFrom<'getFacet'>>;
    getLinkAttributes: (params: ParamsFrom<'getLinkAttributes', Record<string, never>>) => Promise<ReturnTypeFrom<'getLinkAttributes'>>;
    getObjectAttributes: (params: ParamsFrom<'getObjectAttributes', Record<string, never>>) => Promise<ReturnTypeFrom<'getObjectAttributes'>>;
    getObjectInformation: (params: ParamsFrom<'getObjectInformation', Record<string, never>>) => Promise<ReturnTypeFrom<'getObjectInformation'>>;
    getSchemaAsJson: (params: ParamsFrom<'getSchemaAsJson', Record<string, never>>) => Promise<ReturnTypeFrom<'getSchemaAsJson'>>;
    getTypedLinkFacetInformation: (params: ParamsFrom<'getTypedLinkFacetInformation', Record<string, never>>) => Promise<ReturnTypeFrom<'getTypedLinkFacetInformation'>>;
    listAppliedSchemaArns: (params: ParamsFrom<'listAppliedSchemaArns', Record<string, never>>) => Promise<ReturnTypeFrom<'listAppliedSchemaArns'>>;
    listAttachedIndices: (params: ParamsFrom<'listAttachedIndices', Record<string, never>>) => Promise<ReturnTypeFrom<'listAttachedIndices'>>;
    listDevelopmentSchemaArns: (params: ParamsFrom<'listDevelopmentSchemaArns', Record<string, never>>) => Promise<ReturnTypeFrom<'listDevelopmentSchemaArns'>>;
    listDirectories: (params: ParamsFrom<'listDirectories', Record<string, never>>) => Promise<ReturnTypeFrom<'listDirectories'>>;
    listFacetAttributes: (params: ParamsFrom<'listFacetAttributes', Record<string, never>>) => Promise<ReturnTypeFrom<'listFacetAttributes'>>;
    listFacetNames: (params: ParamsFrom<'listFacetNames', Record<string, never>>) => Promise<ReturnTypeFrom<'listFacetNames'>>;
    listIncomingTypedLinks: (params: ParamsFrom<'listIncomingTypedLinks', Record<string, never>>) => Promise<ReturnTypeFrom<'listIncomingTypedLinks'>>;
    listIndex: (params: ParamsFrom<'listIndex', Record<string, never>>) => Promise<ReturnTypeFrom<'listIndex'>>;
    listManagedSchemaArns: (params: ParamsFrom<'listManagedSchemaArns', Record<string, never>>) => Promise<ReturnTypeFrom<'listManagedSchemaArns'>>;
    listObjectAttributes: (params: ParamsFrom<'listObjectAttributes', Record<string, never>>) => Promise<ReturnTypeFrom<'listObjectAttributes'>>;
    listObjectChildren: (params: ParamsFrom<'listObjectChildren', Record<string, never>>) => Promise<ReturnTypeFrom<'listObjectChildren'>>;
    listObjectParentPaths: (params: ParamsFrom<'listObjectParentPaths', Record<string, never>>) => Promise<ReturnTypeFrom<'listObjectParentPaths'>>;
    listObjectParents: (params: ParamsFrom<'listObjectParents', Record<string, never>>) => Promise<ReturnTypeFrom<'listObjectParents'>>;
    listObjectPolicies: (params: ParamsFrom<'listObjectPolicies', Record<string, never>>) => Promise<ReturnTypeFrom<'listObjectPolicies'>>;
    listOutgoingTypedLinks: (params: ParamsFrom<'listOutgoingTypedLinks', Record<string, never>>) => Promise<ReturnTypeFrom<'listOutgoingTypedLinks'>>;
    listPolicyAttachments: (params: ParamsFrom<'listPolicyAttachments', Record<string, never>>) => Promise<ReturnTypeFrom<'listPolicyAttachments'>>;
    listPublishedSchemaArns: (params: ParamsFrom<'listPublishedSchemaArns', Record<string, never>>) => Promise<ReturnTypeFrom<'listPublishedSchemaArns'>>;
    listTagsForResource: (params: ParamsFrom<'listTagsForResource', Record<string, never>>) => Promise<ReturnTypeFrom<'listTagsForResource'>>;
    listTypedLinkFacetAttributes: (params: ParamsFrom<'listTypedLinkFacetAttributes', Record<string, never>>) => Promise<ReturnTypeFrom<'listTypedLinkFacetAttributes'>>;
    listTypedLinkFacetNames: (params: ParamsFrom<'listTypedLinkFacetNames', Record<string, never>>) => Promise<ReturnTypeFrom<'listTypedLinkFacetNames'>>;
    lookupPolicy: (params: ParamsFrom<'lookupPolicy', Record<string, never>>) => Promise<ReturnTypeFrom<'lookupPolicy'>>;
    publishSchema: (params: ParamsFrom<'publishSchema', Record<string, never>>) => Promise<ReturnTypeFrom<'publishSchema'>>;
    putSchemaFromJson: (params: ParamsFrom<'putSchemaFromJson', Record<string, never>>) => Promise<ReturnTypeFrom<'putSchemaFromJson'>>;
    removeFacetFromObject: (params: ParamsFrom<'removeFacetFromObject', Record<string, never>>) => Promise<ReturnTypeFrom<'removeFacetFromObject'>>;
    tagResource: (params: ParamsFrom<'tagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'tagResource'>>;
    untagResource: (params: ParamsFrom<'untagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'untagResource'>>;
    updateFacet: (params: ParamsFrom<'updateFacet', Record<string, never>>) => Promise<ReturnTypeFrom<'updateFacet'>>;
    updateLinkAttributes: (params: ParamsFrom<'updateLinkAttributes', Record<string, never>>) => Promise<ReturnTypeFrom<'updateLinkAttributes'>>;
    updateObjectAttributes: (params: ParamsFrom<'updateObjectAttributes', Record<string, never>>) => Promise<ReturnTypeFrom<'updateObjectAttributes'>>;
    updateSchema: (params: ParamsFrom<'updateSchema', Record<string, never>>) => Promise<ReturnTypeFrom<'updateSchema'>>;
    updateTypedLinkFacet: (params: ParamsFrom<'updateTypedLinkFacet', Record<string, never>>) => Promise<ReturnTypeFrom<'updateTypedLinkFacet'>>;
    upgradeAppliedSchema: (params: ParamsFrom<'upgradeAppliedSchema', Record<string, never>>) => Promise<ReturnTypeFrom<'upgradeAppliedSchema'>>;
    upgradePublishedSchema: (params: ParamsFrom<'upgradePublishedSchema', Record<string, never>>) => Promise<ReturnTypeFrom<'upgradePublishedSchema'>>;
    static fromClient(client: AWSCloudDirectory): CloudDirectory;
    static client(options?: AWSCloudDirectory.Types.ClientConfiguration): CloudDirectory;
}
export {};
