import { Request, Greengrass as AWSGreengrass } from 'aws-sdk';
declare type ReturnTypeFrom<K extends keyof AWSGreengrass> = AWSGreengrass[K] extends (...args: any) => Request<infer R, any> ? R : never;
declare type ParamsFrom<K extends keyof AWSGreengrass, Extras> = AWSGreengrass[K] extends {
    (param: infer P, callback: (...args: any) => void): Request<infer R, any>;
    (callback: (...args: any) => void): any;
} ? P & Extras : never;
export declare class Greengrass {
    private readonly client;
    private constructor();
    readonly signingRegion: undefined;
    readonly service: "greengrass";
    readonly global: false;
    readonly category: "Internet of Things";
    readonly topLevelCalls: readonly [];
    associateRoleToGroup: (params: ParamsFrom<'associateRoleToGroup', Record<string, never>>) => Promise<ReturnTypeFrom<'associateRoleToGroup'>>;
    associateServiceRoleToAccount: (params: ParamsFrom<'associateServiceRoleToAccount', Record<string, never>>) => Promise<ReturnTypeFrom<'associateServiceRoleToAccount'>>;
    createConnectorDefinition: (params: ParamsFrom<'createConnectorDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'createConnectorDefinition'>>;
    createConnectorDefinitionVersion: (params: ParamsFrom<'createConnectorDefinitionVersion', Record<string, never>>) => Promise<ReturnTypeFrom<'createConnectorDefinitionVersion'>>;
    createCoreDefinition: (params: ParamsFrom<'createCoreDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'createCoreDefinition'>>;
    createCoreDefinitionVersion: (params: ParamsFrom<'createCoreDefinitionVersion', Record<string, never>>) => Promise<ReturnTypeFrom<'createCoreDefinitionVersion'>>;
    createDeployment: (params: ParamsFrom<'createDeployment', Record<string, never>>) => Promise<ReturnTypeFrom<'createDeployment'>>;
    createDeviceDefinition: (params: ParamsFrom<'createDeviceDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'createDeviceDefinition'>>;
    createDeviceDefinitionVersion: (params: ParamsFrom<'createDeviceDefinitionVersion', Record<string, never>>) => Promise<ReturnTypeFrom<'createDeviceDefinitionVersion'>>;
    createFunctionDefinition: (params: ParamsFrom<'createFunctionDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'createFunctionDefinition'>>;
    createFunctionDefinitionVersion: (params: ParamsFrom<'createFunctionDefinitionVersion', Record<string, never>>) => Promise<ReturnTypeFrom<'createFunctionDefinitionVersion'>>;
    createGroup: (params: ParamsFrom<'createGroup', Record<string, never>>) => Promise<ReturnTypeFrom<'createGroup'>>;
    createGroupCertificateAuthority: (params: ParamsFrom<'createGroupCertificateAuthority', Record<string, never>>) => Promise<ReturnTypeFrom<'createGroupCertificateAuthority'>>;
    createGroupVersion: (params: ParamsFrom<'createGroupVersion', Record<string, never>>) => Promise<ReturnTypeFrom<'createGroupVersion'>>;
    createLoggerDefinition: (params: ParamsFrom<'createLoggerDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'createLoggerDefinition'>>;
    createLoggerDefinitionVersion: (params: ParamsFrom<'createLoggerDefinitionVersion', Record<string, never>>) => Promise<ReturnTypeFrom<'createLoggerDefinitionVersion'>>;
    createResourceDefinition: (params: ParamsFrom<'createResourceDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'createResourceDefinition'>>;
    createResourceDefinitionVersion: (params: ParamsFrom<'createResourceDefinitionVersion', Record<string, never>>) => Promise<ReturnTypeFrom<'createResourceDefinitionVersion'>>;
    createSoftwareUpdateJob: (params: ParamsFrom<'createSoftwareUpdateJob', Record<string, never>>) => Promise<ReturnTypeFrom<'createSoftwareUpdateJob'>>;
    createSubscriptionDefinition: (params: ParamsFrom<'createSubscriptionDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'createSubscriptionDefinition'>>;
    createSubscriptionDefinitionVersion: (params: ParamsFrom<'createSubscriptionDefinitionVersion', Record<string, never>>) => Promise<ReturnTypeFrom<'createSubscriptionDefinitionVersion'>>;
    deleteConnectorDefinition: (params: ParamsFrom<'deleteConnectorDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteConnectorDefinition'>>;
    deleteCoreDefinition: (params: ParamsFrom<'deleteCoreDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteCoreDefinition'>>;
    deleteDeviceDefinition: (params: ParamsFrom<'deleteDeviceDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteDeviceDefinition'>>;
    deleteFunctionDefinition: (params: ParamsFrom<'deleteFunctionDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteFunctionDefinition'>>;
    deleteGroup: (params: ParamsFrom<'deleteGroup', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteGroup'>>;
    deleteLoggerDefinition: (params: ParamsFrom<'deleteLoggerDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteLoggerDefinition'>>;
    deleteResourceDefinition: (params: ParamsFrom<'deleteResourceDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteResourceDefinition'>>;
    deleteSubscriptionDefinition: (params: ParamsFrom<'deleteSubscriptionDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteSubscriptionDefinition'>>;
    disassociateRoleFromGroup: (params: ParamsFrom<'disassociateRoleFromGroup', Record<string, never>>) => Promise<ReturnTypeFrom<'disassociateRoleFromGroup'>>;
    disassociateServiceRoleFromAccount: (params: ParamsFrom<'disassociateServiceRoleFromAccount', Record<string, never>>) => Promise<ReturnTypeFrom<'disassociateServiceRoleFromAccount'>>;
    getAssociatedRole: (params: ParamsFrom<'getAssociatedRole', Record<string, never>>) => Promise<ReturnTypeFrom<'getAssociatedRole'>>;
    getBulkDeploymentStatus: (params: ParamsFrom<'getBulkDeploymentStatus', Record<string, never>>) => Promise<ReturnTypeFrom<'getBulkDeploymentStatus'>>;
    getConnectivityInfo: (params: ParamsFrom<'getConnectivityInfo', Record<string, never>>) => Promise<ReturnTypeFrom<'getConnectivityInfo'>>;
    getConnectorDefinition: (params: ParamsFrom<'getConnectorDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'getConnectorDefinition'>>;
    getConnectorDefinitionVersion: (params: ParamsFrom<'getConnectorDefinitionVersion', Record<string, never>>) => Promise<ReturnTypeFrom<'getConnectorDefinitionVersion'>>;
    getCoreDefinition: (params: ParamsFrom<'getCoreDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'getCoreDefinition'>>;
    getCoreDefinitionVersion: (params: ParamsFrom<'getCoreDefinitionVersion', Record<string, never>>) => Promise<ReturnTypeFrom<'getCoreDefinitionVersion'>>;
    getDeploymentStatus: (params: ParamsFrom<'getDeploymentStatus', Record<string, never>>) => Promise<ReturnTypeFrom<'getDeploymentStatus'>>;
    getDeviceDefinition: (params: ParamsFrom<'getDeviceDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'getDeviceDefinition'>>;
    getDeviceDefinitionVersion: (params: ParamsFrom<'getDeviceDefinitionVersion', Record<string, never>>) => Promise<ReturnTypeFrom<'getDeviceDefinitionVersion'>>;
    getFunctionDefinition: (params: ParamsFrom<'getFunctionDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'getFunctionDefinition'>>;
    getFunctionDefinitionVersion: (params: ParamsFrom<'getFunctionDefinitionVersion', Record<string, never>>) => Promise<ReturnTypeFrom<'getFunctionDefinitionVersion'>>;
    getGroup: (params: ParamsFrom<'getGroup', Record<string, never>>) => Promise<ReturnTypeFrom<'getGroup'>>;
    getGroupCertificateAuthority: (params: ParamsFrom<'getGroupCertificateAuthority', Record<string, never>>) => Promise<ReturnTypeFrom<'getGroupCertificateAuthority'>>;
    getGroupCertificateConfiguration: (params: ParamsFrom<'getGroupCertificateConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'getGroupCertificateConfiguration'>>;
    getGroupVersion: (params: ParamsFrom<'getGroupVersion', Record<string, never>>) => Promise<ReturnTypeFrom<'getGroupVersion'>>;
    getLoggerDefinition: (params: ParamsFrom<'getLoggerDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'getLoggerDefinition'>>;
    getLoggerDefinitionVersion: (params: ParamsFrom<'getLoggerDefinitionVersion', Record<string, never>>) => Promise<ReturnTypeFrom<'getLoggerDefinitionVersion'>>;
    getResourceDefinition: (params: ParamsFrom<'getResourceDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'getResourceDefinition'>>;
    getResourceDefinitionVersion: (params: ParamsFrom<'getResourceDefinitionVersion', Record<string, never>>) => Promise<ReturnTypeFrom<'getResourceDefinitionVersion'>>;
    getServiceRoleForAccount: (params: ParamsFrom<'getServiceRoleForAccount', Record<string, never>>) => Promise<ReturnTypeFrom<'getServiceRoleForAccount'>>;
    getSubscriptionDefinition: (params: ParamsFrom<'getSubscriptionDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'getSubscriptionDefinition'>>;
    getSubscriptionDefinitionVersion: (params: ParamsFrom<'getSubscriptionDefinitionVersion', Record<string, never>>) => Promise<ReturnTypeFrom<'getSubscriptionDefinitionVersion'>>;
    getThingRuntimeConfiguration: (params: ParamsFrom<'getThingRuntimeConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'getThingRuntimeConfiguration'>>;
    listBulkDeploymentDetailedReports: (params: ParamsFrom<'listBulkDeploymentDetailedReports', Record<string, never>>) => Promise<ReturnTypeFrom<'listBulkDeploymentDetailedReports'>>;
    listBulkDeployments: (params: ParamsFrom<'listBulkDeployments', Record<string, never>>) => Promise<ReturnTypeFrom<'listBulkDeployments'>>;
    listConnectorDefinitionVersions: (params: ParamsFrom<'listConnectorDefinitionVersions', Record<string, never>>) => Promise<ReturnTypeFrom<'listConnectorDefinitionVersions'>>;
    listConnectorDefinitions: (params: ParamsFrom<'listConnectorDefinitions', Record<string, never>>) => Promise<ReturnTypeFrom<'listConnectorDefinitions'>>;
    listCoreDefinitionVersions: (params: ParamsFrom<'listCoreDefinitionVersions', Record<string, never>>) => Promise<ReturnTypeFrom<'listCoreDefinitionVersions'>>;
    listCoreDefinitions: (params: ParamsFrom<'listCoreDefinitions', Record<string, never>>) => Promise<ReturnTypeFrom<'listCoreDefinitions'>>;
    listDeployments: (params: ParamsFrom<'listDeployments', Record<string, never>>) => Promise<ReturnTypeFrom<'listDeployments'>>;
    listDeviceDefinitionVersions: (params: ParamsFrom<'listDeviceDefinitionVersions', Record<string, never>>) => Promise<ReturnTypeFrom<'listDeviceDefinitionVersions'>>;
    listDeviceDefinitions: (params: ParamsFrom<'listDeviceDefinitions', Record<string, never>>) => Promise<ReturnTypeFrom<'listDeviceDefinitions'>>;
    listFunctionDefinitionVersions: (params: ParamsFrom<'listFunctionDefinitionVersions', Record<string, never>>) => Promise<ReturnTypeFrom<'listFunctionDefinitionVersions'>>;
    listFunctionDefinitions: (params: ParamsFrom<'listFunctionDefinitions', Record<string, never>>) => Promise<ReturnTypeFrom<'listFunctionDefinitions'>>;
    listGroupCertificateAuthorities: (params: ParamsFrom<'listGroupCertificateAuthorities', Record<string, never>>) => Promise<ReturnTypeFrom<'listGroupCertificateAuthorities'>>;
    listGroupVersions: (params: ParamsFrom<'listGroupVersions', Record<string, never>>) => Promise<ReturnTypeFrom<'listGroupVersions'>>;
    listGroups: (params: ParamsFrom<'listGroups', Record<string, never>>) => Promise<ReturnTypeFrom<'listGroups'>>;
    listLoggerDefinitionVersions: (params: ParamsFrom<'listLoggerDefinitionVersions', Record<string, never>>) => Promise<ReturnTypeFrom<'listLoggerDefinitionVersions'>>;
    listLoggerDefinitions: (params: ParamsFrom<'listLoggerDefinitions', Record<string, never>>) => Promise<ReturnTypeFrom<'listLoggerDefinitions'>>;
    listResourceDefinitionVersions: (params: ParamsFrom<'listResourceDefinitionVersions', Record<string, never>>) => Promise<ReturnTypeFrom<'listResourceDefinitionVersions'>>;
    listResourceDefinitions: (params: ParamsFrom<'listResourceDefinitions', Record<string, never>>) => Promise<ReturnTypeFrom<'listResourceDefinitions'>>;
    listSubscriptionDefinitionVersions: (params: ParamsFrom<'listSubscriptionDefinitionVersions', Record<string, never>>) => Promise<ReturnTypeFrom<'listSubscriptionDefinitionVersions'>>;
    listSubscriptionDefinitions: (params: ParamsFrom<'listSubscriptionDefinitions', Record<string, never>>) => Promise<ReturnTypeFrom<'listSubscriptionDefinitions'>>;
    listTagsForResource: (params: ParamsFrom<'listTagsForResource', Record<string, never>>) => Promise<ReturnTypeFrom<'listTagsForResource'>>;
    resetDeployments: (params: ParamsFrom<'resetDeployments', Record<string, never>>) => Promise<ReturnTypeFrom<'resetDeployments'>>;
    startBulkDeployment: (params: ParamsFrom<'startBulkDeployment', Record<string, never>>) => Promise<ReturnTypeFrom<'startBulkDeployment'>>;
    stopBulkDeployment: (params: ParamsFrom<'stopBulkDeployment', Record<string, never>>) => Promise<ReturnTypeFrom<'stopBulkDeployment'>>;
    tagResource: (params: ParamsFrom<'tagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'tagResource'>>;
    untagResource: (params: ParamsFrom<'untagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'untagResource'>>;
    updateConnectivityInfo: (params: ParamsFrom<'updateConnectivityInfo', Record<string, never>>) => Promise<ReturnTypeFrom<'updateConnectivityInfo'>>;
    updateConnectorDefinition: (params: ParamsFrom<'updateConnectorDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'updateConnectorDefinition'>>;
    updateCoreDefinition: (params: ParamsFrom<'updateCoreDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'updateCoreDefinition'>>;
    updateDeviceDefinition: (params: ParamsFrom<'updateDeviceDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'updateDeviceDefinition'>>;
    updateFunctionDefinition: (params: ParamsFrom<'updateFunctionDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'updateFunctionDefinition'>>;
    updateGroup: (params: ParamsFrom<'updateGroup', Record<string, never>>) => Promise<ReturnTypeFrom<'updateGroup'>>;
    updateGroupCertificateConfiguration: (params: ParamsFrom<'updateGroupCertificateConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'updateGroupCertificateConfiguration'>>;
    updateLoggerDefinition: (params: ParamsFrom<'updateLoggerDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'updateLoggerDefinition'>>;
    updateResourceDefinition: (params: ParamsFrom<'updateResourceDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'updateResourceDefinition'>>;
    updateSubscriptionDefinition: (params: ParamsFrom<'updateSubscriptionDefinition', Record<string, never>>) => Promise<ReturnTypeFrom<'updateSubscriptionDefinition'>>;
    updateThingRuntimeConfiguration: (params: ParamsFrom<'updateThingRuntimeConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'updateThingRuntimeConfiguration'>>;
    static fromClient(client: AWSGreengrass): Greengrass;
    static client(options?: AWSGreengrass.Types.ClientConfiguration): Greengrass;
}
export {};
