import * as modules from './modules';
declare const createApiClient: ({ endpoint, requestTimeoutInMs, token, }: modules.common.ICreateApiClientInput) => Readonly<{
    _options: Readonly<{
        endpoint: string | undefined;
        requestTimeoutInMs: number | undefined;
    }>;
    account: Readonly<{
        getAccount: () => Promise<Readonly<modules.account.GetAccountResponse>>;
    }>;
    action: Readonly<{
        getAction: ({ action_id, }: modules.action.IGetActionApiRequest) => Promise<Readonly<modules.action.GetActionResponse>>;
        listActions: ({ page, per_page, }: import("./types").IListRequest) => Promise<Readonly<modules.action.ListActionsResponse>>;
    }>;
    app: Readonly<{
        cancelAppDeployment: ({ app_id, deployment_id, }: modules.app.ICancelAppDeploymentApiRequest) => Promise<Readonly<modules.app.CancelAppDeploymentResponse>>;
        createApp: ({ project_id, spec, }: modules.app.ICreateAppApiRequest) => Promise<Readonly<modules.app.CreateAppResponse>>;
        createAppDeployment: ({ app_id, force_build, }: modules.app.ICreateAppDeploymentApiRequest) => Promise<Readonly<modules.app.CreateAppDeploymentResponse>>;
        deleteApp: ({ app_id, }: modules.app.IDeleteAppApiRequest) => Promise<Readonly<modules.app.DeleteAppResponse>>;
        getActiveDeploymentLogs: ({ app_id, component_name, follow, pod_connection_timeout, type, }: modules.app.IGetActiveDeploymentLogsApiRequest) => Promise<Readonly<modules.app.GetActiveDeploymentLogsResponse>>;
        getAggregatedAppDeploymentLogs: ({ app_id, component_name, deployment_id, follow, pod_connection_timeout, type, }: modules.app.IGetAggregatedAppDeploymentLogsApiRequest) => Promise<Readonly<modules.app.GetAggregatedAppDeploymentLogsResponse>>;
        getApp: ({ app_id, }: modules.app.IGetAppApiRequest) => Promise<Readonly<modules.app.GetAppResponse>>;
        getAppDeployment: ({ app_id, deployment_id, }: modules.app.IGetAppDeploymentApiRequest) => Promise<Readonly<modules.app.GetAppDeploymentResponse>>;
        getAppDeploymentLogs: ({ app_id, component_name, deployment_id, follow, pod_connection_timeout, type, }: modules.app.IGetAppDeploymentLogsApiRequest) => Promise<Readonly<modules.app.GetAppDeploymentLogsResponse>>;
        listAppDeployments: ({ app_id, page, per_page, }: modules.app.IListAppDeploymentsApiRequest) => Promise<Readonly<modules.app.ListAppDeploymentsResponse>>;
        listApps: ({ page, per_page, with_projects, }: modules.app.IListAppApiRequest) => Promise<Readonly<modules.app.ListAppsResponse>>;
        runAppDetection: ({ commit_sha, component_type, git, github, }: modules.app.IRunAppDetectionApiRequest) => Promise<Readonly<modules.app.RunAppDetectionResponse>>;
        updateApp: ({ app_id, spec, }: modules.app.IUpdateAppApiRequest) => Promise<Readonly<modules.app.UpdateAppResponse>>;
    }>;
    cdnEndpoint: Readonly<{
        createCdnEndpoint: ({ origin, ttl, certificate_id, custom_domain, }: modules.cdnEndpoint.ICreateCdnEndpointApiRequest) => Promise<Readonly<modules.cdnEndpoint.CreateCdnEndpointResponse>>;
        getCdnEndpoint: ({ cdn_endpoint_id, }: modules.cdnEndpoint.IGetCdnEndpointApiRequest) => Promise<Readonly<modules.cdnEndpoint.GetCdnEndpointResponse>>;
        listCdnEndpoints: ({ page, per_page, }: import("./types").IListRequest) => Promise<Readonly<modules.cdnEndpoint.ListCdnEndpointsResponse>>;
        deleteCdnEndpoint: ({ cdn_endpoint_id, }: modules.cdnEndpoint.IDeleteCdnEndpointApiRequest) => Promise<Readonly<modules.cdnEndpoint.DeleteCdnEndpointResponse>>;
        updateCdnEndpoint: ({ cdn_endpoint_id, ttl, certificate_id, custom_domain, }: modules.cdnEndpoint.IUpdateCdnEndpointApiRequest) => Promise<Readonly<modules.cdnEndpoint.UpdateCdnEndpointResponse>>;
        purgeCache: ({ cdn_endpoint_id, files, }: modules.cdnEndpoint.IPurgeCacheApiRequest) => Promise<Readonly<modules.cdnEndpoint.PurgeCacheResponse>>;
    }>;
    certificate: Readonly<{
        listCertificates: ({ page, per_page, }: import("./types").IListRequest) => Promise<Readonly<modules.certificate.ListCertificatesResponse>>;
        getCertificate: ({ certificate_id, }: modules.certificate.IGetCertificateApiRequest) => Promise<Readonly<modules.certificate.GetCertificateResponse>>;
        deleteCertificate: ({ certificate_id, }: modules.certificate.IDeleteCertificateApiRequest) => Promise<Readonly<modules.certificate.DeleteCertificateResponse>>;
        createCertificate: ({ certificate_chain, dns_names, leaf_certificate, name, private_key, type, }: modules.certificate.ICreateCertificateApiRequest) => Promise<Readonly<modules.certificate.CreateCertificateResponse>>;
    }>;
    containerRegistry: Readonly<{
        configureRegistry: ({ name, }: modules.containerRegistry.IConfigureRegistryApiRequest) => Promise<Readonly<modules.containerRegistry.ConfigureRegistryResponse>>;
        deleteRegistry: () => Promise<Readonly<modules.containerRegistry.DeleteRegistryResponse>>;
        getDockerCredentials: ({ can_write, expiry_seconds, }: modules.containerRegistry.IGetDockerCredentialsApiRequest) => Promise<Readonly<modules.containerRegistry.GetDockerCredentialsResponse>>;
        getRegistry: () => Promise<Readonly<modules.containerRegistry.GetRegistryResponse>>;
    }>;
    customer: Readonly<{
        downloadInvoice: ({ invoice_uuid, format, }: modules.customer.IDownloadInvoiceApiRequest) => Promise<Readonly<modules.customer.DownloadInvoiceResponse>>;
        getBalance: () => Promise<Readonly<modules.customer.GetBalanceResponse>>;
        getInvoiceSummary: ({ invoice_uuid, }: modules.customer.IGetInvoiceSummaryApiRequest) => Promise<Readonly<modules.customer.GetInvoiceSummaryResponse>>;
        listBillingHistory: ({ page, per_page, }: import("./types").IListRequest) => Promise<Readonly<modules.customer.ListBillingHistoryResponse>>;
        listInvoiceItems: ({ invoice_uuid, page, per_page, }: modules.customer.IListInvoiceItemsApiRequest) => Promise<Readonly<modules.customer.ListInvoiceItemsResponse>>;
        listInvoices: ({ page, per_page, }: import("./types").IListRequest) => Promise<Readonly<modules.customer.ListInvoicesResponse>>;
    }>;
    database: Readonly<{
        configureDatabaseClusterEvictionPolicy: ({ database_cluster_id, eviction_policy, }: modules.database.IConfigureDatabaseClusterEvictionPolicyApiRequest) => Promise<Readonly<modules.database.ConfigureDatabaseClusterEvictionPolicyResponse>>;
        configureDatabaseClusterMaintenanceWindow: ({ database_cluster_id, day, hour, }: modules.database.IConfigureDatabaseClusterMaintenanceWindowApiRequest) => Promise<Readonly<modules.database.ConfigureDatabaseClusterMaintenanceWindowResponse>>;
        configureDatabaseClusterSqlModes: ({ database_cluster_id, sql_mode, }: modules.database.IConfigureDatabaseClusterSqlModeApiRequest) => Promise<Readonly<modules.database.ConfigureDatabaseClusterSqlModeResponse>>;
        createConnectionPool: ({ database_cluster_id, db_name, mode, pool_name, size, user_name, }: modules.database.ICreateConnectionPoolApiRequest) => Promise<Readonly<modules.database.CreateConnectionPoolResponse>>;
        createDatabaseCluster: ({ engine, name, num_nodes, private_network_uuid, region, size, tags, version, }: modules.database.ICreateDatabaseClusterApiRequest) => Promise<Readonly<modules.database.CreateDatabaseClusterResponse>>;
        createDatabaseClusterDb: ({ database_cluster_id, db_name, }: modules.database.ICreateDatabaseDbApiRequest) => Promise<Readonly<modules.database.CreateDatabaseDbResponse>>;
        createDatabaseClusterUser: ({ database_cluster_id, mysql_settings, user_name, }: modules.database.ICreateDatabaseClusterUserApiRequest) => Promise<Readonly<modules.database.CreateDatabaseClusterUserResponse>>;
        createReadOnlyReplica: ({ database_cluster_id, name, region, size, tags, }: modules.database.ICreateReadOnlyReplicaApiRequest) => Promise<Readonly<modules.database.CreateReadOnlyReplicaResponse>>;
        deleteConnectionPool: ({ database_cluster_id, pool_name, }: modules.database.IDeleteConnectionPoolApiRequest) => Promise<Readonly<modules.database.DeleteConnectionPoolResponse>>;
        deleteDatabaseClusterDb: ({ database_cluster_id, db_name, }: modules.database.IDeleteDatabaseClusterDbApiRequest) => Promise<Readonly<modules.database.DeleteDatabaseClusterDbResponse>>;
        destroyDatabaseCluster: ({ database_cluster_id, }: modules.database.IDestroyDatabaseClusterApiRequest) => Promise<Readonly<modules.database.DestroyDatabaseClusterResponse>>;
        destroyReadOnlyReplica: ({ database_cluster_id, read_only_replica_name, }: modules.database.IDestroyReadOnlyReplicaApiRequest) => Promise<Readonly<modules.database.DestroyReadOnlyReplicaResponse>>;
        getConnectionPool: ({ database_cluster_id, pool_name, }: modules.database.IGetConnectionPoolApiRequest) => Promise<Readonly<modules.database.GetConnectionPoolResponse>>;
        getDatabaseCluster: ({ database_cluster_id, }: modules.database.IGetDatabaseClusterApiRequest) => Promise<Readonly<modules.database.GetDatabaseClusterResponse>>;
        getDatabaseClusterDb: ({ database_cluster_id, db_name, }: modules.database.IGetDatabaseClusterDbApiRequest) => Promise<Readonly<modules.database.GetDatabaseClusterDbResponse>>;
        getDatabaseClusterEvictionPolicy: ({ database_cluster_id, }: modules.database.IGetDatabaseClusterEvictionPolicyApiRequest) => Promise<Readonly<modules.database.GetDatabaseClusterEvictionPolicyResponse>>;
        getDatabaseClusterSqlMode: ({ database_cluster_id, }: modules.database.IGetDatabaseClusterSqlModeApiRequest) => Promise<Readonly<modules.database.GetDatabaseClusterSqlModeResponse>>;
        getDatabaseClusterUser: ({ database_cluster_id, user_name, }: modules.database.IGetDatabaseClusterUserApiRequest) => Promise<Readonly<modules.database.GetDatabaseClusterUserResponse>>;
        getReadOnlyReplica: ({ database_cluster_id, read_only_replica_name, }: modules.database.IGetReadOnlyReplicaApiRequest) => Promise<Readonly<modules.database.GetReadOnlyReplicaResponse>>;
        listConnectionPools: ({ page, per_page, database_cluster_id, }: modules.database.IListdConnectionPoolsApiRequest) => Promise<Readonly<modules.database.ListdConnectionPoolsResponse>>;
        listDatabaseClusterBackups: ({ page, per_page, database_cluster_id, }: modules.database.IListDatabaseClusterBackupsApiRequest) => Promise<Readonly<modules.database.ListDatabaseClusterBackupsResponse>>;
        listDatabaseClusterDbs: ({ page, per_page, database_cluster_id, }: modules.database.IListDatabaseClusterDbsApiRequest) => Promise<Readonly<modules.database.ListDatabaseClusterDbsResponse>>;
        listDatabaseClusterFirewallRules: ({ page, per_page, database_cluster_id, }: modules.database.IListDatabaseClusterFirewallRulesApiRequest) => Promise<Readonly<modules.database.ListDatabaseClusterFirewallRulesResponse>>;
        listDatabaseClusters: ({ page, per_page, }: import("./types").IListRequest) => Promise<Readonly<modules.database.ListDatabaseClusterResponse>>;
        listDatabaseClusterUsers: ({ page, per_page, database_cluster_id, }: modules.database.IListDatabaseClusterUsersApiRequest) => Promise<Readonly<modules.database.ListDatabaseClusterUsersResponse>>;
        listDatabaseOptions: () => Promise<Readonly<modules.database.ListDatabaseOptionsResponse>>;
        listReadOnlyReplicas: ({ page, per_page, database_cluster_id, }: modules.database.IListReadOnlyReplicasApiRequest) => Promise<Readonly<modules.database.ListReadOnlyReplicasResponse>>;
        migrateDatabaseCluster: ({ database_cluster_id, region, }: modules.database.IMigrateDatabaseClusterApiRequest) => Promise<Readonly<modules.database.MigrateDatabaseClusterResponse>>;
        removeDatabaseClusterUser: ({ database_cluster_id, user_name, }: modules.database.IRemoveDatabaseClusterUserApiRequest) => Promise<Readonly<modules.database.RemoveDatabaseClusterUserResponse>>;
        resizeDatabaseCluster: ({ database_cluster_id, num_nodes, size, }: modules.database.IResizeDatabaseClusterApiRequest) => Promise<Readonly<modules.database.ResizeDatabaseClusterResponse>>;
        restoreDatabaseClusterBackup: ({ backup_restore, engine, name, num_nodes, region, size, tags, version, }: modules.database.IRestoreDatabaseClusterBackupApiRequest) => Promise<Readonly<modules.database.RestoreDatabaseClusterBackupResponse>>;
        updateDatabaseClusterFirewallRules: ({ database_cluster_id, rules, }: modules.database.IUpdateDatabaseClusterFirewallRulesApiRequest) => Promise<Readonly<modules.database.UpdateDatabaseClusterFirewallRulesResponse>>;
    }>;
    domain: Readonly<{
        createDomain: ({ ip_address, name, }: modules.domain.ICreateDomainApiRequest) => Promise<Readonly<modules.domain.CreateDomainResponse>>;
        createDomainRecord: ({ domain_name, data, flags, name, port, priority, tag, ttl, type, weight, }: modules.domain.ICreateDomainRecordApiRequest) => Promise<Readonly<modules.domain.CreateDomainRecordResponse>>;
        deleteDomain: ({ name, }: modules.domain.IDeleteDomainApiRequest) => Promise<Readonly<modules.domain.DeleteDomainResponse>>;
        deleteDomainRecord: ({ domain_name, domain_record_id, }: modules.domain.IDeleteDomainRecordApiRequest) => Promise<Readonly<modules.domain.DeleteDomainRecordResponse>>;
        getDomain: ({ name, }: modules.domain.IGetDomainApiRequest) => Promise<Readonly<modules.domain.GetDomainResponse>>;
        getDomainRecord: ({ domain_name, domain_record_id, }: modules.domain.IGetDomainRecordApiRequest) => Promise<Readonly<modules.domain.GetDomainRecordResponse>>;
        listDomainRecords: ({ domain_name, name, page, per_page, type, }: modules.domain.IListDomainRecordsRequest) => Promise<Readonly<modules.domain.ListDomainRecordsResponse>>;
        listDomains: ({ page, per_page, }: import("./types").IListRequest) => Promise<Readonly<modules.domain.ListDomainsResponse>>;
        updateDomainRecord: ({ data, domain_name, domain_record_id, flags, name, port, priority, tag, ttl, type, weight, }: modules.domain.IUpdateDomainRecordApiRequest) => Promise<Readonly<modules.domain.UpdateDomainRecordResponse>>;
    }>;
    droplet: Readonly<{
        changeDropletKernel: ({ droplet_id, kernel, }: modules.droplet.IChangeDropletKernelApiRequest) => Promise<Readonly<modules.droplet.ChangeDropletKernelResponse>>;
        createDroplet: ({ backups, image, ipv6, monitoring, name, private_networking, region, size, ssh_keys, tags, user_data, volumes, vpc_uuid, with_droplet_agent, }: modules.droplet.ICreateDropletApiRequest) => Promise<Readonly<modules.droplet.CreateDropletResponse>>;
        createDroplets: ({ backups, image, ipv6, monitoring, names, private_networking, region, size, ssh_keys, tags, user_data, volumes, vpc_uuid, with_droplet_agent, }: modules.droplet.ICreateDropletsApiRequest) => Promise<Readonly<modules.droplet.CreateDropletsResponse>>;
        deleteDroplet: ({ droplet_id, }: modules.droplet.IDeleteDropletApiRequest) => Promise<Readonly<modules.droplet.DeleteDropletResponse>>;
        deleteDropletsByTag: ({ tag_name, }: modules.droplet.IDeleteDropletByTagApiRequest) => Promise<Readonly<modules.droplet.DeleteDropletByTagResponse>>;
        destroyDropletAndAllAssociatedResources: ({ acknowledge, droplet_id, }: modules.droplet.IdestroyDropletAndAllAssociatedResourcesApiRequest) => Promise<Readonly<modules.droplet.destroyDropletAndAllAssociatedResourcesResponse>>;
        destroyDropletAndAssociatedResources: ({ droplet_id, snapshots, volume_snapshots, volumes, }: modules.droplet.IdestroyDropletAndAssociatedResourcesApiRequest) => Promise<Readonly<modules.droplet.destroyDropletAndAssociatedResourcesResponse>>;
        disableDropletBackups: ({ droplet_id, }: modules.droplet.IDisableDropletBackupsApiRequest) => Promise<Readonly<modules.droplet.DisableDropletBackupsResponse>>;
        doActionByDropletTag: ({ tag_name, type, }: modules.droplet.IDoActionByDropletTagApiRequest) => Promise<Readonly<modules.droplet.DoActionByDropletTagResponse>>;
        enableDropletBackups: ({ droplet_id, }: modules.droplet.IEnableDropletBackupsApiRequest) => Promise<Readonly<modules.droplet.EnableDropletBackupsResponse>>;
        enableDropletIpv6: ({ droplet_id, }: modules.droplet.IEnableDropletIpv6ApiRequest) => Promise<Readonly<modules.droplet.EnableDropletIpv6Response>>;
        enableDropletPrivateNetworking: ({ droplet_id, }: modules.droplet.IEnableDropletPrivateNetworkingApiRequest) => Promise<Readonly<modules.droplet.EnableDropletPrivateNetworkingResponse>>;
        getDroplet: ({ droplet_id, }: modules.droplet.IGetDropletApiRequest) => Promise<Readonly<modules.droplet.GetDropletResponse>>;
        getDropletAction: ({ action_id, droplet_id, }: modules.droplet.IGetDropletActionApiRequest) => Promise<Readonly<modules.droplet.GetDropletActionResponse>>;
        getDropletDestroyStatus: ({ droplet_id, }: modules.droplet.IGetDropletDestroyStatusApiRequest) => Promise<Readonly<modules.droplet.GetDropletDestroyStatusResponse>>;
        listDropletActions: ({ droplet_id, page, per_page, }: modules.droplet.IListDropletActionsApiRequest) => Promise<Readonly<modules.droplet.ListDropletActionsResponse>>;
        listDropletAssociatedResources: ({ droplet_id, }: modules.droplet.IListDropletAssociatedResourcesApiRequest) => Promise<Readonly<modules.droplet.ListDropletAssociatedResourcesResponse>>;
        listDropletBackups: ({ droplet_id, page, per_page, }: modules.droplet.IListDropletBackupsApiRequest) => Promise<Readonly<modules.droplet.ListDropletBackupsResponse>>;
        listDropletKernels: ({ droplet_id, page, per_page, }: modules.droplet.IListDropletKernelsApiRequest) => Promise<Readonly<modules.droplet.ListDropletKernelsResponse>>;
        listDropletNeighborhoods: ({ page, per_page, }: import("./types").IListRequest) => Promise<Readonly<modules.droplet.ListDropletNeighborhoodsResponse>>;
        listDropletNeighbors: ({ droplet_id, page, per_page, }: modules.droplet.IListDropletNeighborsApiRequest) => Promise<Readonly<modules.droplet.ListDropletNeighborsResponse>>;
        listDroplets: ({ page, per_page, tag_name, }: modules.droplet.IListDropletsApiRequest) => Promise<Readonly<modules.droplet.ListDropletsResponse>>;
        listDropletSnapshots: ({ droplet_id, page, per_page, }: modules.droplet.IListDropletSnapshotsApiRequest) => Promise<Readonly<modules.droplet.ListDropletSnapshotsResponse>>;
        powerCycleDroplet: ({ droplet_id, }: modules.droplet.IPowerCycleDropletApiRequest) => Promise<Readonly<modules.droplet.PowerCycleDropletResponse>>;
        powerOffDroplet: ({ droplet_id, }: modules.droplet.IPowerOffDropletApiRequest) => Promise<Readonly<modules.droplet.PowerOffDropletResponse>>;
        powerOnDroplet: ({ droplet_id, }: modules.droplet.IPowerOnDropletApiRequest) => Promise<Readonly<modules.droplet.PowerOnDropletResponse>>;
        rebootDroplet: ({ droplet_id, }: modules.droplet.IRebootDropletApiRequest) => Promise<Readonly<modules.droplet.RebootDropletResponse>>;
        rebuildDroplet: ({ droplet_id, image, }: modules.droplet.IRebuildDropletApiRequest) => Promise<Readonly<modules.droplet.RebuildDropletResponse>>;
        renameDroplet: ({ droplet_id, name, }: modules.droplet.IRenameDropletApiRequest) => Promise<Readonly<modules.droplet.RenameDropletResponse>>;
        resetDropletPassword: ({ droplet_id, }: modules.droplet.IResetDropletPasswordApiRequest) => Promise<Readonly<modules.droplet.ResetDropletPasswordResponse>>;
        resizeDroplet: ({ disk, droplet_id, size, }: modules.droplet.IResizeDropletApiRequest) => Promise<Readonly<modules.droplet.ResizeDropletResponse>>;
        restoreDroplet: ({ droplet_id, image, }: modules.droplet.IRestoreDropletApiRequest) => Promise<Readonly<modules.droplet.RestoreDropletResponse>>;
        retryDropletDestroy: ({ droplet_id, }: modules.droplet.IRetryDropletDestroyApiRequest) => Promise<Readonly<modules.droplet.RetryDropletDestroyResponse>>;
        shutdownDroplet: ({ droplet_id, }: modules.droplet.IShutdownDropletApiRequest) => Promise<Readonly<modules.droplet.ShutdownDropletResponse>>;
        snapshotDroplet: ({ droplet_id, name, }: modules.droplet.ISnapshotDropletApiRequest) => Promise<Readonly<modules.droplet.SnapshotDropletResponse>>;
    }>;
    firewall: Readonly<{
        addDropletsToFirewall: ({ droplet_ids, firewall_id, }: modules.firewall.IAddDropletsToFirewallApiRequest) => Promise<Readonly<modules.firewall.AddDropletsToFirewallResponse>>;
        addRulesToFirewall: ({ firewall_id, inbound_rules, outbound_rules, }: modules.firewall.IAddRulesToFirewallApiRequest) => Promise<Readonly<modules.firewall.AddRulesToFirewallResponse>>;
        addTagsToFirewall: ({ firewall_id, tags, }: modules.firewall.IAddTagsToFirewallApiRequest) => Promise<Readonly<modules.firewall.AddTagsToFirewallResponse>>;
        createFirewall: ({ droplet_ids, inbound_rules, name, outbound_rules, tags, }: modules.firewall.IFirewall) => Promise<Readonly<modules.firewall.CreateFirewallResponse>>;
        deleteFirewall: ({ firewall_id, }: modules.firewall.IDeleteFirewallApiRequest) => Promise<Readonly<modules.firewall.DeleteFirewallResponse>>;
        getFirewall: ({ firewall_id, }: modules.firewall.IGetFirewallApiRequest) => Promise<Readonly<modules.firewall.GetFirewallResponse>>;
        listFirewalls: ({ page, per_page, }: import("./types").IListRequest) => Promise<Readonly<modules.firewall.ListFirewallsResponse>>;
        removeDropletsFromFirewall: ({ droplet_ids, firewall_id, }: modules.firewall.IRemoveDropletsFromFirewallApiRequest) => Promise<Readonly<modules.firewall.RemoveDropletsFromFirewallResponse>>;
        removeRulesFromFirewall: ({ firewall_id, inbound_rules, outbound_rules, }: modules.firewall.IRemoveRulesFromFirewallApiRequest) => Promise<Readonly<modules.firewall.RemoveRulesFromFirewallResponse>>;
        removeTagsFromFirewall: ({ firewall_id, tags, }: modules.firewall.IRemoveTagsFromFirewallApiRequest) => Promise<Readonly<modules.firewall.RemoveTagsFromFirewallResponse>>;
        updateFirewall: ({ droplet_ids, id, inbound_rules, name, outbound_rules, tags, }: modules.firewall.IFirewall) => Promise<Readonly<modules.firewall.UpdateFirewallResponse>>;
    }>;
    floatingIp: Readonly<{
        assignIpToDroplet: ({ droplet_id, ip, }: modules.floatingIp.IAssignIpToDropletApiRequest) => Promise<Readonly<modules.floatingIp.AssignIpToDropletResponse>>;
        createFloatingIp: (body: modules.floatingIp.CreateFloatingIpApiRequest) => Promise<Readonly<modules.floatingIp.CreateFloatingIpResponse>>;
        deleteFloatingIp: ({ ip, }: modules.floatingIp.IDeleteFloatingIpApiRequest) => Promise<Readonly<modules.floatingIp.DeleteFloatingIpResponse>>;
        getFloatingIp: ({ ip, }: modules.floatingIp.IGetFloatingIpApiRequest) => Promise<Readonly<modules.floatingIp.GetFloatingIpResponse>>;
        getFloatingIpAction: ({ action_id, ip, }: modules.floatingIp.IGetFloatingIpActionApiRequest) => Promise<Readonly<modules.floatingIp.GetFloatingIpActionResponse>>;
        listFloatingIpActions: ({ ip, page, per_page, }: modules.floatingIp.IListFloatingIpActionsApiRequest) => Promise<Readonly<modules.floatingIp.ListFloatingIpActionssResponse>>;
        listFloatingIps: ({ page, per_page, }: import("./types").IListRequest) => Promise<Readonly<modules.floatingIp.ListFloatingIpssResponse>>;
        unassignIpFromDroplet: ({ ip, }: modules.floatingIp.IUnassignIpFromDropletApiRequest) => Promise<Readonly<modules.floatingIp.UnassignIpFromDropletResponse>>;
    }>;
    image: Readonly<{
        convertImageToSnapshot: ({ image_id, }: modules.image.IConvertImageToSnapshotApiRequest) => Promise<Readonly<modules.image.ConvertImageToSnapshotRes>>;
        createCustomImage: ({ description, distribution, name, region, tags, url, }: modules.image.ICreateCustomImageApiRequest) => Promise<Readonly<modules.image.CreateCustomImageRes>>;
        deleteImage: ({ image_id, }: modules.image.IDeleteImageApiRequest) => Promise<Readonly<modules.image.DeleteImageRes>>;
        getImageAction: ({ image_id, action_id, }: modules.image.IGetImageActionApiRequest) => Promise<Readonly<modules.image.GetImageActionResponse>>;
        getImage: ({ image_id, slug, }: modules.image.IGetImageApiRequest) => Promise<Readonly<modules.image.GetImageResponse>>;
        listImageActions: ({ page, per_page, image_id, }: modules.image.IListImageActionsApiRequest) => Promise<Readonly<modules.image.ListImageActionsResponse>>;
        listImages: ({ page, per_page, tag_name, type, user_images, }: modules.image.IListImageApiRequest) => Promise<Readonly<modules.image.ListImagesResponse>>;
        transferImage: ({ image_id, region, }: modules.image.ITransferImageApiRequest) => Promise<Readonly<modules.image.TransferImageRes>>;
        updateImage: ({ description, distribution, image_id, name, }: modules.image.IUpdateImageApiRequest) => Promise<Readonly<modules.image.UpdateImageRes>>;
    }>;
    kubernetes: Readonly<{
        addContainerRegistry: ({ cluster_uuids, }: modules.kubernetes.IAddContainerRegistryApiRequest) => Promise<Readonly<modules.kubernetes.AddContainerRegistryResponse>>;
        createKubernetesCluster: ({ name, region, version, tags, auto_upgrade, maintenance_policy, node_pools, vpc_uuid, }: modules.kubernetes.ICreateKubernetesClusterApiRequest) => Promise<Readonly<modules.kubernetes.CreateKubernetesClusterResponse>>;
        createNodePool: ({ auto_scale, count, kubernetes_cluster_id, labels, max_nodes, min_nodes, name, size, tags, taints, }: modules.kubernetes.ICreateNodePoolApiRequest) => Promise<Readonly<modules.kubernetes.CreateNodePoolResponse>>;
        deleteKubernetesCluster: ({ kubernetes_cluster_id, }: modules.kubernetes.IDeleteKubernetesClusterApiRequest) => Promise<Readonly<modules.kubernetes.DeleteKubernetesClusterResponse>>;
        deleteNode: ({ kubernetes_cluster_id, node_pool_id, node_id, drain_node, replace_node, }: modules.kubernetes.IDeleteNodeApiRequest) => Promise<Readonly<modules.kubernetes.DeleteNodeResponse>>;
        deleteNodePool: ({ kubernetes_cluster_id, node_pool_id, }: modules.kubernetes.IDeleteNodePoolApiRequest) => Promise<Readonly<modules.kubernetes.DeleteNodePoolResponse>>;
        getClusterlintDiagnostics: ({ kubernetes_cluster_id, }: modules.kubernetes.IGetClusterlintDiagnosticsApiRequest) => Promise<Readonly<modules.kubernetes.GetClusterlintDiagnosticsResponse>>;
        getKubernetesCluster: ({ kubernetes_cluster_id, }: modules.kubernetes.IGetKubernetesClusterApiRequest) => Promise<Readonly<modules.kubernetes.GetKubernetesClusterResponse>>;
        getKubernetesClusterCredentials: ({ kubernetes_cluster_id, expiration_in_seconds, }: modules.kubernetes.IGetKubernetesClusterCredentialsApiRequest) => Promise<Readonly<modules.kubernetes.GetKubernetesClusterCredentialsResponse>>;
        getKubernetesClusterKubeconfig: ({ kubernetes_cluster_id, expiration_in_seconds, }: modules.kubernetes.IGetKubernetesClusterKubeconfigApiRequest) => Promise<Readonly<modules.kubernetes.GetKubernetesClusterKubeconfigResponse>>;
        getNodePool: ({ kubernetes_cluster_id, node_pool_id, }: modules.kubernetes.IGetNodePoolApiRequest) => Promise<Readonly<modules.kubernetes.GetNodePoolResponse>>;
        listAvailableOptionsOfKubernetes: () => Promise<Readonly<modules.kubernetes.ListAvailableOptionsOfKubernetesResponse>>;
        listKubernetesClusterAvailableUpgrades: ({ kubernetes_cluster_id, }: modules.kubernetes.IListKubernetesClusterAvailableUpgradesApiRequest) => Promise<Readonly<modules.kubernetes.ListKubernetesClusterAvailableUpgradesResponse>>;
        listKubernetesClusters: ({ page, per_page, }: import("./types").IListRequest) => Promise<Readonly<modules.kubernetes.ListKubernetesClusterResponse>>;
        listNodePools: ({ kubernetes_cluster_id, page, per_page, }: modules.kubernetes.IListNodePoolsApiRequest) => Promise<Readonly<modules.kubernetes.ListNodePoolsResponse>>;
        removeContainerRegistry: ({ cluster_uuids, }: modules.kubernetes.IRemoveContainerRegistryApiRequest) => Promise<Readonly<modules.kubernetes.RemoveContainerRegistryResponse>>;
        runClusterlintOnKubernetesCluster: ({ kubernetes_cluster_id, include_groups, include_checks, exclude_groups, exclude_checks, }: modules.kubernetes.IRunClusterlintOnKubernetesClusterRequest) => Promise<Readonly<modules.kubernetes.RunClusterlintResponse>>;
        updateKubernetesCluster: ({ auto_upgrade, kubernetes_cluster_id, maintenance_policy, name, tags, }: modules.kubernetes.IUpdateKubernetesClusterApiRequest) => Promise<Readonly<modules.kubernetes.UpdateKubernetesClusterResponse>>;
        updateNodePool: ({ auto_scale, count, kubernetes_cluster_id, labels, max_nodes, min_nodes, name, node_pool_id, tags, taints, }: modules.kubernetes.IUpdateNodePoolApiRequest) => Promise<Readonly<modules.kubernetes.UpdateNodePoolResponse>>;
        upgradeKubernetesCluster: ({ kubernetes_cluster_id, version, }: modules.kubernetes.IUpgradeKubernetesClusterApiRequest) => Promise<Readonly<modules.kubernetes.UpgradeKubernetesClusterResponse>>;
    }>;
    loadBalancer: Readonly<{
        addDropletsToLoadBalancer: ({ droplet_ids, load_balancer_id, }: modules.loadBalancer.IAddDropletsToLoadBalancerApiRequest) => Promise<Readonly<modules.loadBalancer.AddDropletsToLoadBalancerResponse>>;
        addRulesToLoadBalancer: ({ forwarding_rules, load_balancer_id, }: modules.loadBalancer.IAddRulesToLoadBalancerApiRequest) => Promise<Readonly<modules.loadBalancer.AddRulesToLoadBalancerResponse>>;
        createLoadBalancer: ({ algorithm, droplet_ids, enable_backend_keepalive, enable_proxy_protocol, forwarding_rules, health_check, name, redirect_http_to_https, region, sticky_sessions, tag, vpc_uuid, }: modules.loadBalancer.ICreateLoadBalancerApiRequest) => Promise<Readonly<modules.loadBalancer.CreateLoadBalancerResponse>>;
        deleteLoadBalancer: ({ load_balancer_id, }: modules.loadBalancer.IDeleteLoadBalancerApiRequest) => Promise<Readonly<modules.loadBalancer.DeleteLoadBalancerResponse>>;
        getLoadBalancer: ({ load_balancer_id, }: modules.loadBalancer.IGetLoadBalancerApiRequest) => Promise<Readonly<modules.loadBalancer.GetLoadBalancerResponse>>;
        listLoadBalancers: ({ page, per_page, }: import("./types").IListRequest) => Promise<Readonly<modules.loadBalancer.ListLoadBalancersResponse>>;
        removeDropletsFromLoadBalancer: ({ droplet_ids, load_balancer_id, }: modules.loadBalancer.IRemoveDropletsFromLoadBalancerApiRequest) => Promise<Readonly<modules.loadBalancer.RemoveDropletsFromLoadBalancerResponse>>;
        removeRulesFromLoadBalancer: ({ forwarding_rules, load_balancer_id, }: modules.loadBalancer.IRemoveRulesFromLoadBalancerApiRequest) => Promise<Readonly<modules.loadBalancer.RemoveRulesFromLoadBalancerResponse>>;
        updateLoadBalancer: ({ algorithm, droplet_ids, enable_proxy_protocol, forwarding_rules, health_check, load_balancer_id, name, redirect_http_to_https, region, sticky_sessions, tag, vpc_uuid, }: modules.loadBalancer.ICustomLoadBalancerPayload) => Promise<Readonly<modules.loadBalancer.UpdateLoadBalancerResponse>>;
    }>;
    monitoring: Readonly<{
        getDropletAvailableMemoryMetrics: ({ end, host_id, start, }: modules.monitoring.IGetDropletAvailableMemoryMetricsInput) => Promise<Readonly<modules.monitoring.GetDropletAvailableMemoryMetricsResponse>>;
        getDropletBandwidthMetrics: ({ end, host_id, network_interface, start, traffic_direction, }: modules.monitoring.IGetDropletBandwidthMetricsInput) => Promise<Readonly<modules.monitoring.GetDropletBandwidthMetricsResponse>>;
        getDropletCpuMetrics: ({ end, host_id, start, }: modules.monitoring.IGetDropletCpuMetricsInput) => Promise<Readonly<modules.monitoring.GetDropletCpuMetricsResponse>>;
        getDropletFreeMemoryMetrics: ({ end, host_id, start, }: modules.monitoring.IGetDropletFreeMemoryMetricsInput) => Promise<Readonly<modules.monitoring.GetDropletFreeMemoryMetricsResponse>>;
        getDropletTotalMemoryMetrics: ({ end, host_id, start, }: modules.monitoring.IGetDropletTotalMemoryMetricsInput) => Promise<Readonly<modules.monitoring.GetDropletTotalMemoryMetricsResponse>>;
    }>;
    project: Readonly<{
        assignResourcesToDefaultProject: ({ resources, }: modules.project.IAssignResourcesToDefaultProjectApiRequest) => Promise<Readonly<modules.project.AssignResourcesToDefaultProjectResponse>>;
        assignResourcesToProject: ({ project_id, resources, }: modules.project.IAssignResourcesToProjectApiRequest) => Promise<Readonly<modules.project.AssignResourcesToProjectResponse>>;
        createProject: ({ name, description, purpose, environment, }: modules.project.ICreateProjectApiRequest) => Promise<Readonly<modules.project.CreateProjectResponse>>;
        deleteProject: ({ project_id, }: modules.project.IDeleteProjectApiRequest) => Promise<Readonly<modules.project.DeleteProjectResponse>>;
        getDefaultProject: () => Promise<Readonly<modules.project.GetDefaultProjectResponse>>;
        getProject: ({ project_id, }: modules.project.IGetProjectApiRequest) => Promise<Readonly<modules.project.GetProjectResponse>>;
        listDefaultProjectResources: ({ page, per_page, }: import("./types").IListRequest) => Promise<Readonly<modules.project.ListDefaultProjectResourcesResponse>>;
        listProjectResources: ({ page, per_page, project_id, }: modules.project.IListProjectResourcesApiRequest) => Promise<Readonly<modules.project.ListProjectResourcesResponse>>;
        listProjects: ({ page, per_page, }: import("./types").IListRequest) => Promise<Readonly<modules.project.ListProjectsResponse>>;
        patchDefaultProject: ({ description, environment, is_default, name, purpose, }: modules.project.IPatchDefaultProjectApiRequest) => Promise<Readonly<modules.project.PatchDefaultProjectResponse>>;
        patchProject: ({ description, environment, is_default, name, project_id, purpose, }: modules.project.IPatchProjectApiRequest) => Promise<Readonly<modules.project.PatchProjectResponse>>;
        updateDefaultProject: ({ description, environment, is_default, name, purpose, }: modules.project.IUpdateDefaultProjectApiRequest) => Promise<Readonly<modules.project.UpdateDefaultProjectResponse>>;
        updateProject: ({ description, environment, is_default, name, project_id, purpose, }: modules.project.IUpdateProjectApiRequest) => Promise<Readonly<modules.project.UpdateProjectResponse>>;
    }>;
    region: Readonly<{
        listRegions: ({ page, per_page, }: import("./types").IListRequest) => Promise<Readonly<modules.region.ListRegionsResponse>>;
    }>;
    size: Readonly<{
        listSizes: ({ page, per_page, }: import("./types").IListRequest) => Promise<Readonly<modules.size.ListSizesResponse>>;
    }>;
    snapshot: Readonly<{
        deleteSnapshot: ({ snapshot_id, }: modules.snapshot.IDeleteSnapshotApiRequest) => Promise<Readonly<modules.snapshot.DeleteSnapshotRes>>;
        getSnapshot: ({ snapshot_id, }: modules.snapshot.IGetSnapshotApiRequest) => Promise<Readonly<modules.snapshot.GetSnapshotResponse>>;
        listSnapshots: ({ page, per_page, resource_type, }: modules.snapshot.IListSnapshotApiRequest) => Promise<Readonly<modules.snapshot.ListSnapshotsResponse>>;
    }>;
    sshKey: Readonly<{
        createSshKey: ({ name, public_key, }: modules.sshKey.ICreateSshKeyApiRequest) => Promise<Readonly<modules.sshKey.CreateSshKeyResponse>>;
        destroySshKey: ({ ssh_key_id, }: modules.sshKey.IDestroySshKeyApiRequest) => Promise<Readonly<modules.sshKey.DestroySshKeyResponse>>;
        getSshKey: ({ ssh_key_id, }: modules.sshKey.IGetSshKeyApiRequest) => Promise<Readonly<modules.sshKey.GetSshKeyResponse>>;
        listSshKeys: ({ page, per_page, }: import("./types").IListRequest) => Promise<Readonly<modules.sshKey.ListSshKeysResponse>>;
        updateSshKey: ({ name, ssh_key_id, }: modules.sshKey.IUpdateSshKeyApiRequest) => Promise<Readonly<modules.sshKey.UpdateSshKeyResponse>>;
    }>;
    tag: Readonly<{
        createTag: ({ name, }: modules.tag.ICreateTagApiRequest) => Promise<Readonly<modules.tag.CreateTagResponse>>;
        deleteTag: ({ tag_name, }: modules.tag.IDeleteTagApiRequest) => Promise<Readonly<modules.tag.DeleteTagResponse>>;
        getTag: ({ tag_name, }: modules.tag.IGetTagApiRequest) => Promise<Readonly<modules.tag.GetTagResponse>>;
        listTags: ({ page, per_page, }: import("./types").IListRequest) => Promise<Readonly<modules.tag.ListTagsResponse>>;
        tagResources: ({ tag_name, resources, }: modules.tag.ITagResourcesApiRequest) => Promise<Readonly<modules.tag.TagResourcesResponse>>;
        untagResources: ({ tag_name, resources, }: modules.tag.IUntagResourcesApiRequest) => Promise<Readonly<modules.tag.UntagResourcesResponse>>;
    }>;
    volume: Readonly<{
        attachVolumeToDroplet: ({ droplet_id, region, volume_id, }: modules.volume.IAttachVolumeToDropletApiRequest) => Promise<Readonly<modules.volume.AttachVolumeToDropletResponse>>;
        createVolume: ({ description, filesystem_label, filesystem_type, name, region, size_gigabytes, snapshot_id, tags, }: modules.volume.ICreateVolumeApiRequest) => Promise<Readonly<modules.volume.CreateVolumeResponse>>;
        createVolumeSnapshot: ({ name, tags, volume_id, }: modules.volume.ICreateVolumeSnapshotApiRequest) => Promise<Readonly<modules.volume.CreateVolumeSnapshotRes>>;
        deleteVolume: ({ volume_id, }: modules.volume.IDeleteVolumeApiRequest) => Promise<Readonly<modules.volume.DeleteVolumeResponse>>;
        deleteVolumeByName: ({ region, volume_name, }: modules.volume.IDeleteVolumeByNameApiRequest) => Promise<Readonly<modules.volume.DeleteVolumeByNameResponse>>;
        detachVolumeFromDroplet: ({ droplet_id, region, volume_id, }: modules.volume.IDetachVolumeToDropletApiRequest) => Promise<Readonly<modules.volume.DetachVolumeToDropletResponse>>;
        getVolume: ({ volume_id, }: modules.volume.IGetVolumeApiRequest) => Promise<Readonly<modules.volume.GetVolumeResponse>>;
        getVolumeAction: ({ action_id, volume_id, }: modules.volume.IGetVolumeActionApiRequest) => Promise<Readonly<modules.volume.GetVolumeActionResponse>>;
        listVolumeActions: ({ page, per_page, volume_id, }: modules.volume.IListVolumeActionsApiRequest) => Promise<Readonly<modules.volume.ListVolumeActionssResponse>>;
        listVolumes: ({ name, page, per_page, }: modules.volume.IListVolumesApiRequest) => Promise<Readonly<modules.volume.ListVolumesResponse>>;
        listVolumeSnapshots: ({ page, per_page, volume_id, }: modules.volume.IListVolumeSnapshotsApiRequest) => Promise<Readonly<modules.volume.ListVolumeSnapshotsRes>>;
        resizeVolume: ({ region, size_gigabytes, volume_id, }: modules.volume.IResizeVolumeToDropletApiRequest) => Promise<Readonly<modules.volume.ResizeVolumeToDropletResponse>>;
    }>;
    vpc: Readonly<{
        createVpc: ({ description, ip_range, is_default, name, region, }: modules.vpc.ICreateVpcApiRequest) => Promise<Readonly<modules.vpc.CreateVpcResponse>>;
        deleteVpc: ({ vpc_id, }: modules.vpc.IDeleteVpcApiRequest) => Promise<Readonly<modules.vpc.DeleteVpcResponse>>;
        getVpc: ({ vpc_id, }: modules.vpc.IGetVpcApiRequest) => Promise<Readonly<modules.vpc.GetVpcResponse>>;
        listVpcResources: ({ page, per_page, resource_type, vpc_id, }: modules.vpc.IListVpcResourcesApiRequest) => Promise<Readonly<modules.vpc.ListVpcResourcesResponse>>;
        listVpcs: ({ page, per_page, }: import("./types").IListRequest) => Promise<Readonly<modules.vpc.ListVpcsResponse>>;
        updateVpc: ({ description, is_default, name, vpc_id, }: modules.vpc.IUpdateVpcApiRequest) => Promise<Readonly<modules.vpc.UpdateVpcResponse>>;
    }>;
}>;
export { createApiClient, modules, };
