import * as Core from 'cloudflare/core';
import { APIResource } from 'cloudflare/resource';
import * as GatewayAPI from 'cloudflare/resources/zero-trust/gateway/gateway';
import * as AppTypesAPI from 'cloudflare/resources/zero-trust/gateway/app-types';
import * as AuditSSHSettingsAPI from 'cloudflare/resources/zero-trust/gateway/audit-ssh-settings';
import * as CategoriesAPI from 'cloudflare/resources/zero-trust/gateway/categories';
import * as ConfigurationsAPI from 'cloudflare/resources/zero-trust/gateway/configurations';
import * as LocationsAPI from 'cloudflare/resources/zero-trust/gateway/locations';
import * as LoggingAPI from 'cloudflare/resources/zero-trust/gateway/logging';
import * as ProxyEndpointsAPI from 'cloudflare/resources/zero-trust/gateway/proxy-endpoints';
import * as RulesAPI from 'cloudflare/resources/zero-trust/gateway/rules';
import * as ListsAPI from 'cloudflare/resources/zero-trust/gateway/lists/lists';
export declare class Gateway extends APIResource {
    auditSSHSettings: AuditSSHSettingsAPI.AuditSSHSettings;
    categories: CategoriesAPI.Categories;
    appTypes: AppTypesAPI.AppTypes;
    configurations: ConfigurationsAPI.Configurations;
    lists: ListsAPI.Lists;
    locations: LocationsAPI.Locations;
    logging: LoggingAPI.Logging;
    proxyEndpoints: ProxyEndpointsAPI.ProxyEndpoints;
    rules: RulesAPI.Rules;
    /**
     * Creates a Zero Trust account with an existing Cloudflare account.
     */
    create(params: GatewayCreateParams, options?: Core.RequestOptions): Core.APIPromise<GatewayCreateResponse>;
    /**
     * Gets information about the current Zero Trust account.
     */
    list(params: GatewayListParams, options?: Core.RequestOptions): Core.APIPromise<GatewayListResponse>;
}
export interface GatewayCreateResponse {
    /**
     * Cloudflare account ID.
     */
    id?: string;
    /**
     * Gateway internal ID.
     */
    gateway_tag?: string;
    /**
     * The name of the provider. Usually Cloudflare.
     */
    provider_name?: string;
}
export interface GatewayListResponse {
    /**
     * Cloudflare account ID.
     */
    id?: string;
    /**
     * Gateway internal ID.
     */
    gateway_tag?: string;
    /**
     * The name of the provider. Usually Cloudflare.
     */
    provider_name?: string;
}
export interface GatewayCreateParams {
    account_id: string;
}
export interface GatewayListParams {
    account_id: string;
}
export declare namespace Gateway {
    export import GatewayCreateResponse = GatewayAPI.GatewayCreateResponse;
    export import GatewayListResponse = GatewayAPI.GatewayListResponse;
    export import GatewayCreateParams = GatewayAPI.GatewayCreateParams;
    export import GatewayListParams = GatewayAPI.GatewayListParams;
    export import AuditSSHSettings = AuditSSHSettingsAPI.AuditSSHSettings;
    export import ZeroTrustGatewaySettings = AuditSSHSettingsAPI.ZeroTrustGatewaySettings;
    export import AuditSSHSettingUpdateParams = AuditSSHSettingsAPI.AuditSSHSettingUpdateParams;
    export import AuditSSHSettingGetParams = AuditSSHSettingsAPI.AuditSSHSettingGetParams;
    export import Categories = CategoriesAPI.Categories;
    export import ZeroTrustGatewayCategories = CategoriesAPI.ZeroTrustGatewayCategories;
    export import ZeroTrustGatewayCategoriesSinglePage = CategoriesAPI.ZeroTrustGatewayCategoriesSinglePage;
    export import CategoryListParams = CategoriesAPI.CategoryListParams;
    export import AppTypes = AppTypesAPI.AppTypes;
    export import ZeroTrustGatewayAppTypes = AppTypesAPI.ZeroTrustGatewayAppTypes;
    export import ZeroTrustGatewayAppTypesSinglePage = AppTypesAPI.ZeroTrustGatewayAppTypesSinglePage;
    export import AppTypeListParams = AppTypesAPI.AppTypeListParams;
    export import Configurations = ConfigurationsAPI.Configurations;
    export import ConfigurationUpdateResponse = ConfigurationsAPI.ConfigurationUpdateResponse;
    export import ConfigurationEditResponse = ConfigurationsAPI.ConfigurationEditResponse;
    export import ConfigurationGetResponse = ConfigurationsAPI.ConfigurationGetResponse;
    export import ConfigurationUpdateParams = ConfigurationsAPI.ConfigurationUpdateParams;
    export import ConfigurationEditParams = ConfigurationsAPI.ConfigurationEditParams;
    export import ConfigurationGetParams = ConfigurationsAPI.ConfigurationGetParams;
    export import Lists = ListsAPI.Lists;
    export import ZeroTrustGatewayLists = ListsAPI.ZeroTrustGatewayLists;
    export import ListCreateResponse = ListsAPI.ListCreateResponse;
    export import ListDeleteResponse = ListsAPI.ListDeleteResponse;
    export import ZeroTrustGatewayListsSinglePage = ListsAPI.ZeroTrustGatewayListsSinglePage;
    export import ListCreateParams = ListsAPI.ListCreateParams;
    export import ListUpdateParams = ListsAPI.ListUpdateParams;
    export import ListListParams = ListsAPI.ListListParams;
    export import ListDeleteParams = ListsAPI.ListDeleteParams;
    export import ListEditParams = ListsAPI.ListEditParams;
    export import ListGetParams = ListsAPI.ListGetParams;
    export import Locations = LocationsAPI.Locations;
    export import ZeroTrustGatewayLocations = LocationsAPI.ZeroTrustGatewayLocations;
    export import LocationDeleteResponse = LocationsAPI.LocationDeleteResponse;
    export import ZeroTrustGatewayLocationsSinglePage = LocationsAPI.ZeroTrustGatewayLocationsSinglePage;
    export import LocationCreateParams = LocationsAPI.LocationCreateParams;
    export import LocationUpdateParams = LocationsAPI.LocationUpdateParams;
    export import LocationListParams = LocationsAPI.LocationListParams;
    export import LocationDeleteParams = LocationsAPI.LocationDeleteParams;
    export import LocationGetParams = LocationsAPI.LocationGetParams;
    export import Logging = LoggingAPI.Logging;
    export import ZeroTrustGatewayGatewayAccountLoggingSettings = LoggingAPI.ZeroTrustGatewayGatewayAccountLoggingSettings;
    export import LoggingUpdateParams = LoggingAPI.LoggingUpdateParams;
    export import LoggingGetParams = LoggingAPI.LoggingGetParams;
    export import ProxyEndpoints = ProxyEndpointsAPI.ProxyEndpoints;
    export import ZeroTrustGatewayProxyEndpoints = ProxyEndpointsAPI.ZeroTrustGatewayProxyEndpoints;
    export import ProxyEndpointDeleteResponse = ProxyEndpointsAPI.ProxyEndpointDeleteResponse;
    export import ZeroTrustGatewayProxyEndpointsSinglePage = ProxyEndpointsAPI.ZeroTrustGatewayProxyEndpointsSinglePage;
    export import ProxyEndpointCreateParams = ProxyEndpointsAPI.ProxyEndpointCreateParams;
    export import ProxyEndpointListParams = ProxyEndpointsAPI.ProxyEndpointListParams;
    export import ProxyEndpointDeleteParams = ProxyEndpointsAPI.ProxyEndpointDeleteParams;
    export import ProxyEndpointEditParams = ProxyEndpointsAPI.ProxyEndpointEditParams;
    export import ProxyEndpointGetParams = ProxyEndpointsAPI.ProxyEndpointGetParams;
    export import Rules = RulesAPI.Rules;
    export import ZeroTrustGatewayRules = RulesAPI.ZeroTrustGatewayRules;
    export import RuleDeleteResponse = RulesAPI.RuleDeleteResponse;
    export import ZeroTrustGatewayRulesSinglePage = RulesAPI.ZeroTrustGatewayRulesSinglePage;
    export import RuleCreateParams = RulesAPI.RuleCreateParams;
    export import RuleUpdateParams = RulesAPI.RuleUpdateParams;
    export import RuleListParams = RulesAPI.RuleListParams;
    export import RuleDeleteParams = RulesAPI.RuleDeleteParams;
    export import RuleGetParams = RulesAPI.RuleGetParams;
}
//# sourceMappingURL=gateway.d.ts.map