import { Request, Neptune as AWSNeptune } from 'aws-sdk';
declare type ReturnTypeFrom<K extends keyof AWSNeptune> = AWSNeptune[K] extends (...args: any) => Request<infer R, any> ? R : never;
declare type ParamsFrom<K extends keyof AWSNeptune, Extras> = AWSNeptune[K] extends {
    (param: infer P, callback: (...args: any) => void): Request<infer R, any>;
    (callback: (...args: any) => void): any;
} ? P & Extras : never;
export declare class Neptune {
    private readonly client;
    private constructor();
    readonly signingRegion: undefined;
    readonly service: "rds";
    readonly global: false;
    readonly category: "Database";
    readonly topLevelCalls: readonly ["describeDBClusterEndpoints", "describeDBClusterParameterGroups", "describeDBClusterSnapshots", "describeDBClusters", "describeDBEngineVersions", "describeDBInstances", "describeDBParameterGroups", "describeDBSubnetGroups", "describeEventSubscriptions", "describeEvents", "describePendingMaintenanceActions"];
    addRoleToDBCluster: (params: ParamsFrom<'addRoleToDBCluster', Record<string, never>>) => Promise<ReturnTypeFrom<'addRoleToDBCluster'>>;
    addSourceIdentifierToSubscription: (params: ParamsFrom<'addSourceIdentifierToSubscription', Record<string, never>>) => Promise<ReturnTypeFrom<'addSourceIdentifierToSubscription'>>;
    addTagsToResource: (params: ParamsFrom<'addTagsToResource', Record<string, never>>) => Promise<ReturnTypeFrom<'addTagsToResource'>>;
    applyPendingMaintenanceAction: (params: ParamsFrom<'applyPendingMaintenanceAction', Record<string, never>>) => Promise<ReturnTypeFrom<'applyPendingMaintenanceAction'>>;
    copyDBClusterParameterGroup: (params: ParamsFrom<'copyDBClusterParameterGroup', Record<string, never>>) => Promise<ReturnTypeFrom<'copyDBClusterParameterGroup'>>;
    copyDBClusterSnapshot: (params: ParamsFrom<'copyDBClusterSnapshot', Record<string, never>>) => Promise<ReturnTypeFrom<'copyDBClusterSnapshot'>>;
    copyDBParameterGroup: (params: ParamsFrom<'copyDBParameterGroup', Record<string, never>>) => Promise<ReturnTypeFrom<'copyDBParameterGroup'>>;
    createDBCluster: (params: ParamsFrom<'createDBCluster', Record<string, never>>) => Promise<ReturnTypeFrom<'createDBCluster'>>;
    createDBClusterEndpoint: (params: ParamsFrom<'createDBClusterEndpoint', Record<string, never>>) => Promise<ReturnTypeFrom<'createDBClusterEndpoint'>>;
    createDBClusterParameterGroup: (params: ParamsFrom<'createDBClusterParameterGroup', Record<string, never>>) => Promise<ReturnTypeFrom<'createDBClusterParameterGroup'>>;
    createDBClusterSnapshot: (params: ParamsFrom<'createDBClusterSnapshot', Record<string, never>>) => Promise<ReturnTypeFrom<'createDBClusterSnapshot'>>;
    createDBInstance: (params: ParamsFrom<'createDBInstance', Record<string, never>>) => Promise<ReturnTypeFrom<'createDBInstance'>>;
    createDBParameterGroup: (params: ParamsFrom<'createDBParameterGroup', Record<string, never>>) => Promise<ReturnTypeFrom<'createDBParameterGroup'>>;
    createDBSubnetGroup: (params: ParamsFrom<'createDBSubnetGroup', Record<string, never>>) => Promise<ReturnTypeFrom<'createDBSubnetGroup'>>;
    createEventSubscription: (params: ParamsFrom<'createEventSubscription', Record<string, never>>) => Promise<ReturnTypeFrom<'createEventSubscription'>>;
    createGlobalCluster: (params: ParamsFrom<'createGlobalCluster', Record<string, never>>) => Promise<ReturnTypeFrom<'createGlobalCluster'>>;
    deleteDBCluster: (params: ParamsFrom<'deleteDBCluster', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteDBCluster'>>;
    deleteDBClusterEndpoint: (params: ParamsFrom<'deleteDBClusterEndpoint', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteDBClusterEndpoint'>>;
    deleteDBClusterParameterGroup: (params: ParamsFrom<'deleteDBClusterParameterGroup', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteDBClusterParameterGroup'>>;
    deleteDBClusterSnapshot: (params: ParamsFrom<'deleteDBClusterSnapshot', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteDBClusterSnapshot'>>;
    deleteDBInstance: (params: ParamsFrom<'deleteDBInstance', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteDBInstance'>>;
    deleteDBParameterGroup: (params: ParamsFrom<'deleteDBParameterGroup', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteDBParameterGroup'>>;
    deleteDBSubnetGroup: (params: ParamsFrom<'deleteDBSubnetGroup', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteDBSubnetGroup'>>;
    deleteEventSubscription: (params: ParamsFrom<'deleteEventSubscription', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteEventSubscription'>>;
    deleteGlobalCluster: (params: ParamsFrom<'deleteGlobalCluster', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteGlobalCluster'>>;
    describeDBClusterEndpoints(params: {
        [K in keyof ParamsFrom<'describeDBClusterEndpoints', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describeDBClusterEndpoints', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describeDBClusterEndpoints'>]-?: ReturnTypeFrom<'describeDBClusterEndpoints'>[K];
        }['DBClusterEndpoints'];
    }>;
    describeDBClusterParameterGroups(params: {
        [K in keyof ParamsFrom<'describeDBClusterParameterGroups', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describeDBClusterParameterGroups', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describeDBClusterParameterGroups'>]-?: ReturnTypeFrom<'describeDBClusterParameterGroups'>[K];
        }['DBClusterParameterGroups'];
    }>;
    describeDBClusterParameters(params: {
        [K in keyof ParamsFrom<'describeDBClusterParameters', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describeDBClusterParameters', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describeDBClusterParameters'>]-?: ReturnTypeFrom<'describeDBClusterParameters'>[K];
        }['Parameters'];
    }>;
    describeDBClusterSnapshotAttributes: (params: ParamsFrom<'describeDBClusterSnapshotAttributes', Record<string, never>>) => Promise<ReturnTypeFrom<'describeDBClusterSnapshotAttributes'>>;
    describeDBClusterSnapshots(params: {
        [K in keyof ParamsFrom<'describeDBClusterSnapshots', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describeDBClusterSnapshots', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describeDBClusterSnapshots'>]-?: ReturnTypeFrom<'describeDBClusterSnapshots'>[K];
        }['DBClusterSnapshots'];
    }>;
    describeDBClusters(params: {
        [K in keyof ParamsFrom<'describeDBClusters', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describeDBClusters', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describeDBClusters'>]-?: ReturnTypeFrom<'describeDBClusters'>[K];
        }['DBClusters'];
    }>;
    describeDBEngineVersions(params: {
        [K in keyof ParamsFrom<'describeDBEngineVersions', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describeDBEngineVersions', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describeDBEngineVersions'>]-?: ReturnTypeFrom<'describeDBEngineVersions'>[K];
        }['DBEngineVersions'];
    }>;
    describeDBInstances(params: {
        [K in keyof ParamsFrom<'describeDBInstances', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describeDBInstances', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describeDBInstances'>]-?: ReturnTypeFrom<'describeDBInstances'>[K];
        }['DBInstances'];
    }>;
    describeDBParameterGroups(params: {
        [K in keyof ParamsFrom<'describeDBParameterGroups', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describeDBParameterGroups', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describeDBParameterGroups'>]-?: ReturnTypeFrom<'describeDBParameterGroups'>[K];
        }['DBParameterGroups'];
    }>;
    describeDBParameters(params: {
        [K in keyof ParamsFrom<'describeDBParameters', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describeDBParameters', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describeDBParameters'>]-?: ReturnTypeFrom<'describeDBParameters'>[K];
        }['Parameters'];
    }>;
    describeDBSubnetGroups(params: {
        [K in keyof ParamsFrom<'describeDBSubnetGroups', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describeDBSubnetGroups', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describeDBSubnetGroups'>]-?: ReturnTypeFrom<'describeDBSubnetGroups'>[K];
        }['DBSubnetGroups'];
    }>;
    describeEngineDefaultClusterParameters: (params: ParamsFrom<'describeEngineDefaultClusterParameters', Record<string, never>>) => Promise<ReturnTypeFrom<'describeEngineDefaultClusterParameters'>>;
    describeEngineDefaultParameters(params: {
        [K in keyof ParamsFrom<'describeEngineDefaultParameters', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describeEngineDefaultParameters', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describeEngineDefaultParameters'>]-?: ReturnTypeFrom<'describeEngineDefaultParameters'>[K];
        }['EngineDefaults']['Parameters'];
    }>;
    describeEventCategories: (params: ParamsFrom<'describeEventCategories', Record<string, never>>) => Promise<ReturnTypeFrom<'describeEventCategories'>>;
    describeEventSubscriptions(params: {
        [K in keyof ParamsFrom<'describeEventSubscriptions', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describeEventSubscriptions', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describeEventSubscriptions'>]-?: ReturnTypeFrom<'describeEventSubscriptions'>[K];
        }['EventSubscriptionsList'];
    }>;
    describeEvents(params: {
        [K in keyof ParamsFrom<'describeEvents', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describeEvents', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describeEvents'>]-?: ReturnTypeFrom<'describeEvents'>[K];
        }['Events'];
    }>;
    describeGlobalClusters: (params: ParamsFrom<'describeGlobalClusters', Record<string, never>>) => Promise<ReturnTypeFrom<'describeGlobalClusters'>>;
    describeOrderableDBInstanceOptions(params: {
        [K in keyof ParamsFrom<'describeOrderableDBInstanceOptions', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describeOrderableDBInstanceOptions', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describeOrderableDBInstanceOptions'>]-?: ReturnTypeFrom<'describeOrderableDBInstanceOptions'>[K];
        }['OrderableDBInstanceOptions'];
    }>;
    describePendingMaintenanceActions(params: {
        [K in keyof ParamsFrom<'describePendingMaintenanceActions', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'describePendingMaintenanceActions', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'describePendingMaintenanceActions'>]-?: ReturnTypeFrom<'describePendingMaintenanceActions'>[K];
        }['PendingMaintenanceActions'];
    }>;
    describeValidDBInstanceModifications: (params: ParamsFrom<'describeValidDBInstanceModifications', Record<string, never>>) => Promise<ReturnTypeFrom<'describeValidDBInstanceModifications'>>;
    failoverDBCluster: (params: ParamsFrom<'failoverDBCluster', Record<string, never>>) => Promise<ReturnTypeFrom<'failoverDBCluster'>>;
    failoverGlobalCluster: (params: ParamsFrom<'failoverGlobalCluster', Record<string, never>>) => Promise<ReturnTypeFrom<'failoverGlobalCluster'>>;
    listTagsForResource: (params: ParamsFrom<'listTagsForResource', Record<string, never>>) => Promise<ReturnTypeFrom<'listTagsForResource'>>;
    modifyDBCluster: (params: ParamsFrom<'modifyDBCluster', Record<string, never>>) => Promise<ReturnTypeFrom<'modifyDBCluster'>>;
    modifyDBClusterEndpoint: (params: ParamsFrom<'modifyDBClusterEndpoint', Record<string, never>>) => Promise<ReturnTypeFrom<'modifyDBClusterEndpoint'>>;
    modifyDBClusterParameterGroup: (params: ParamsFrom<'modifyDBClusterParameterGroup', Record<string, never>>) => Promise<ReturnTypeFrom<'modifyDBClusterParameterGroup'>>;
    modifyDBClusterSnapshotAttribute: (params: ParamsFrom<'modifyDBClusterSnapshotAttribute', Record<string, never>>) => Promise<ReturnTypeFrom<'modifyDBClusterSnapshotAttribute'>>;
    modifyDBInstance: (params: ParamsFrom<'modifyDBInstance', Record<string, never>>) => Promise<ReturnTypeFrom<'modifyDBInstance'>>;
    modifyDBParameterGroup: (params: ParamsFrom<'modifyDBParameterGroup', Record<string, never>>) => Promise<ReturnTypeFrom<'modifyDBParameterGroup'>>;
    modifyDBSubnetGroup: (params: ParamsFrom<'modifyDBSubnetGroup', Record<string, never>>) => Promise<ReturnTypeFrom<'modifyDBSubnetGroup'>>;
    modifyEventSubscription: (params: ParamsFrom<'modifyEventSubscription', Record<string, never>>) => Promise<ReturnTypeFrom<'modifyEventSubscription'>>;
    modifyGlobalCluster: (params: ParamsFrom<'modifyGlobalCluster', Record<string, never>>) => Promise<ReturnTypeFrom<'modifyGlobalCluster'>>;
    promoteReadReplicaDBCluster: (params: ParamsFrom<'promoteReadReplicaDBCluster', Record<string, never>>) => Promise<ReturnTypeFrom<'promoteReadReplicaDBCluster'>>;
    rebootDBInstance: (params: ParamsFrom<'rebootDBInstance', Record<string, never>>) => Promise<ReturnTypeFrom<'rebootDBInstance'>>;
    removeFromGlobalCluster: (params: ParamsFrom<'removeFromGlobalCluster', Record<string, never>>) => Promise<ReturnTypeFrom<'removeFromGlobalCluster'>>;
    removeRoleFromDBCluster: (params: ParamsFrom<'removeRoleFromDBCluster', Record<string, never>>) => Promise<ReturnTypeFrom<'removeRoleFromDBCluster'>>;
    removeSourceIdentifierFromSubscription: (params: ParamsFrom<'removeSourceIdentifierFromSubscription', Record<string, never>>) => Promise<ReturnTypeFrom<'removeSourceIdentifierFromSubscription'>>;
    removeTagsFromResource: (params: ParamsFrom<'removeTagsFromResource', Record<string, never>>) => Promise<ReturnTypeFrom<'removeTagsFromResource'>>;
    resetDBClusterParameterGroup: (params: ParamsFrom<'resetDBClusterParameterGroup', Record<string, never>>) => Promise<ReturnTypeFrom<'resetDBClusterParameterGroup'>>;
    resetDBParameterGroup: (params: ParamsFrom<'resetDBParameterGroup', Record<string, never>>) => Promise<ReturnTypeFrom<'resetDBParameterGroup'>>;
    restoreDBClusterFromSnapshot: (params: ParamsFrom<'restoreDBClusterFromSnapshot', Record<string, never>>) => Promise<ReturnTypeFrom<'restoreDBClusterFromSnapshot'>>;
    restoreDBClusterToPointInTime: (params: ParamsFrom<'restoreDBClusterToPointInTime', Record<string, never>>) => Promise<ReturnTypeFrom<'restoreDBClusterToPointInTime'>>;
    startDBCluster: (params: ParamsFrom<'startDBCluster', Record<string, never>>) => Promise<ReturnTypeFrom<'startDBCluster'>>;
    stopDBCluster: (params: ParamsFrom<'stopDBCluster', Record<string, never>>) => Promise<ReturnTypeFrom<'stopDBCluster'>>;
    static fromClient(client: AWSNeptune): Neptune;
    static client(options?: AWSNeptune.Types.ClientConfiguration): Neptune;
}
export {};
