UNPKG

cloudflare

Version:

The official TypeScript library for the Cloudflare API

1,691 lines (1,404 loc) 250 kB
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. import { APIResource } from '../../../resource'; import * as Core from '../../../core'; import * as AddressSpacesAPI from './address-spaces'; import { AddressSpaceEditParams, AddressSpaceEditResponse, AddressSpaceListParams, AddressSpaceListResponse, AddressSpaceUpdateParams, AddressSpaceUpdateResponse, AddressSpaces, } from './address-spaces'; import { SinglePage } from '../../../pagination'; import { type Response } from '../../../_shims/index'; export class OnRamps extends APIResource { addressSpaces: AddressSpacesAPI.AddressSpaces = new AddressSpacesAPI.AddressSpaces(this._client); /** * Create a new On-ramp (Closed Beta). */ create(params: OnRampCreateParams, options?: Core.RequestOptions): Core.APIPromise<OnRampCreateResponse> { const { account_id, forwarded, ...body } = params; return ( this._client.post(`/accounts/${account_id}/magic/cloud/onramps`, { body, ...options, headers: { ...(forwarded != null ? { forwarded: forwarded } : undefined), ...options?.headers }, }) as Core.APIPromise<{ result: OnRampCreateResponse }> )._thenUnwrap((obj) => obj.result); } /** * Update an On-ramp (Closed Beta). */ update( onrampId: string, params: OnRampUpdateParams, options?: Core.RequestOptions, ): Core.APIPromise<OnRampUpdateResponse> { const { account_id, ...body } = params; return ( this._client.put(`/accounts/${account_id}/magic/cloud/onramps/${onrampId}`, { body, ...options, }) as Core.APIPromise<{ result: OnRampUpdateResponse }> )._thenUnwrap((obj) => obj.result); } /** * List On-ramps (Closed Beta). */ list( params: OnRampListParams, options?: Core.RequestOptions, ): Core.PagePromise<OnRampListResponsesSinglePage, OnRampListResponse> { const { account_id, ...query } = params; return this._client.getAPIList( `/accounts/${account_id}/magic/cloud/onramps`, OnRampListResponsesSinglePage, { query, ...options }, ); } /** * Delete an On-ramp (Closed Beta). */ delete( onrampId: string, params: OnRampDeleteParams, options?: Core.RequestOptions, ): Core.APIPromise<OnRampDeleteResponse> { const { account_id, destroy, force } = params; return ( this._client.delete(`/accounts/${account_id}/magic/cloud/onramps/${onrampId}`, { query: { destroy, force }, ...options, }) as Core.APIPromise<{ result: OnRampDeleteResponse }> )._thenUnwrap((obj) => obj.result); } /** * Apply an On-ramp (Closed Beta). */ apply( onrampId: string, params: OnRampApplyParams, options?: Core.RequestOptions, ): Core.APIPromise<OnRampApplyResponse> { const { account_id } = params; return this._client.post(`/accounts/${account_id}/magic/cloud/onramps/${onrampId}/apply`, options); } /** * Update an On-ramp (Closed Beta). */ edit( onrampId: string, params: OnRampEditParams, options?: Core.RequestOptions, ): Core.APIPromise<OnRampEditResponse> { const { account_id, ...body } = params; return ( this._client.patch(`/accounts/${account_id}/magic/cloud/onramps/${onrampId}`, { body, ...options, }) as Core.APIPromise<{ result: OnRampEditResponse }> )._thenUnwrap((obj) => obj.result); } /** * Export an On-ramp to terraform ready file(s) (Closed Beta). */ export( onrampId: string, params: OnRampExportParams, options?: Core.RequestOptions, ): Core.APIPromise<Response> { const { account_id } = params; return this._client.post(`/accounts/${account_id}/magic/cloud/onramps/${onrampId}/export`, { ...options, headers: { Accept: 'application/zip', ...options?.headers }, __binaryResponse: true, }); } /** * Read an On-ramp (Closed Beta). */ get( onrampId: string, params: OnRampGetParams, options?: Core.RequestOptions, ): Core.APIPromise<OnRampGetResponse> { const { account_id, ...query } = params; return ( this._client.get(`/accounts/${account_id}/magic/cloud/onramps/${onrampId}`, { query, ...options, }) as Core.APIPromise<{ result: OnRampGetResponse }> )._thenUnwrap((obj) => obj.result); } /** * Plan an On-ramp (Closed Beta). */ plan( onrampId: string, params: OnRampPlanParams, options?: Core.RequestOptions, ): Core.APIPromise<OnRampPlanResponse> { const { account_id } = params; return this._client.post(`/accounts/${account_id}/magic/cloud/onramps/${onrampId}/plan`, options); } } export class OnRampListResponsesSinglePage extends SinglePage<OnRampListResponse> {} export interface OnRampCreateResponse { id: string; cloud_type: 'AWS' | 'AZURE' | 'GOOGLE'; install_routes_in_cloud: boolean; install_routes_in_magic_wan: boolean; name: string; type: 'OnrampTypeSingle' | 'OnrampTypeHub'; updated_at: string; attached_hubs?: Array<string>; attached_vpcs?: Array<string>; description?: string; hub?: string; last_applied_at?: string; last_exported_at?: string; last_planned_at?: string; manage_hub_to_hub_attachments?: boolean; manage_vpc_to_hub_attachments?: boolean; planned_monthly_cost_estimate?: OnRampCreateResponse.PlannedMonthlyCostEstimate; planned_resources?: Array<OnRampCreateResponse.PlannedResource>; planned_resources_unavailable?: boolean; post_apply_monthly_cost_estimate?: OnRampCreateResponse.PostApplyMonthlyCostEstimate; post_apply_resources?: { [key: string]: OnRampCreateResponse.PostApplyResources }; post_apply_resources_unavailable?: boolean; region?: string; status?: OnRampCreateResponse.Status; vpc?: string; vpcs_by_id?: { [key: string]: OnRampCreateResponse.VPCsByID }; /** * The list of vpc IDs for which resource details failed to generate. */ vpcs_by_id_unavailable?: Array<string>; } export namespace OnRampCreateResponse { export interface PlannedMonthlyCostEstimate { currency: string; current_monthly_cost: number; diff: number; proposed_monthly_cost: number; } export interface PlannedResource { diff: PlannedResource.Diff; keys_require_replace: Array<string>; monthly_cost_estimate_diff: PlannedResource.MonthlyCostEstimateDiff; planned_action: 'no_op' | 'create' | 'update' | 'replace' | 'destroy'; resource: PlannedResource.Resource; } export namespace PlannedResource { export interface Diff { diff: string; left_description: string; left_yaml: string; right_description: string; right_yaml: string; } export interface MonthlyCostEstimateDiff { currency: string; current_monthly_cost: number; diff: number; proposed_monthly_cost: number; } export interface Resource { id: string; cloud_type: 'AWS' | 'AZURE' | 'GOOGLE' | 'CLOUDFLARE'; detail: string; name: string; resource_type: | 'aws_customer_gateway' | 'aws_egress_only_internet_gateway' | 'aws_internet_gateway' | 'aws_instance' | 'aws_network_interface' | 'aws_route' | 'aws_route_table' | 'aws_route_table_association' | 'aws_subnet' | 'aws_vpc' | 'aws_vpc_ipv4_cidr_block_association' | 'aws_vpn_connection' | 'aws_vpn_connection_route' | 'aws_vpn_gateway' | 'aws_security_group' | 'aws_vpc_security_group_ingress_rule' | 'aws_vpc_security_group_egress_rule' | 'aws_ec2_managed_prefix_list' | 'aws_ec2_transit_gateway' | 'aws_ec2_transit_gateway_prefix_list_reference' | 'aws_ec2_transit_gateway_vpc_attachment' | 'azurerm_application_security_group' | 'azurerm_lb' | 'azurerm_lb_backend_address_pool' | 'azurerm_lb_nat_pool' | 'azurerm_lb_nat_rule' | 'azurerm_lb_rule' | 'azurerm_local_network_gateway' | 'azurerm_network_interface' | 'azurerm_network_interface_application_security_group_association' | 'azurerm_network_interface_backend_address_pool_association' | 'azurerm_network_interface_security_group_association' | 'azurerm_network_security_group' | 'azurerm_public_ip' | 'azurerm_route' | 'azurerm_route_table' | 'azurerm_subnet' | 'azurerm_subnet_route_table_association' | 'azurerm_virtual_machine' | 'azurerm_virtual_network_gateway_connection' | 'azurerm_virtual_network' | 'azurerm_virtual_network_gateway' | 'google_compute_network' | 'google_compute_subnetwork' | 'google_compute_vpn_gateway' | 'google_compute_vpn_tunnel' | 'google_compute_route' | 'google_compute_address' | 'google_compute_global_address' | 'google_compute_router' | 'google_compute_interconnect_attachment' | 'google_compute_ha_vpn_gateway' | 'google_compute_forwarding_rule' | 'google_compute_network_firewall_policy' | 'google_compute_network_firewall_policy_rule' | 'cloudflare_static_route' | 'cloudflare_ipsec_tunnel'; title: string; } } export interface PostApplyMonthlyCostEstimate { currency: string; monthly_cost: number; } export interface PostApplyResources { id: string; account_id: string; cloud_type: 'AWS' | 'AZURE' | 'GOOGLE' | 'CLOUDFLARE'; config: { [key: string]: unknown }; deployment_provider: string; managed: boolean; monthly_cost_estimate: PostApplyResources.MonthlyCostEstimate; name: string; native_id: string; observations: { [key: string]: PostApplyResources.Observations }; provider_ids: Array<string>; provider_names_by_id: { [key: string]: string }; region: string; resource_group: string; resource_type: | 'aws_customer_gateway' | 'aws_egress_only_internet_gateway' | 'aws_internet_gateway' | 'aws_instance' | 'aws_network_interface' | 'aws_route' | 'aws_route_table' | 'aws_route_table_association' | 'aws_subnet' | 'aws_vpc' | 'aws_vpc_ipv4_cidr_block_association' | 'aws_vpn_connection' | 'aws_vpn_connection_route' | 'aws_vpn_gateway' | 'aws_security_group' | 'aws_vpc_security_group_ingress_rule' | 'aws_vpc_security_group_egress_rule' | 'aws_ec2_managed_prefix_list' | 'aws_ec2_transit_gateway' | 'aws_ec2_transit_gateway_prefix_list_reference' | 'aws_ec2_transit_gateway_vpc_attachment' | 'azurerm_application_security_group' | 'azurerm_lb' | 'azurerm_lb_backend_address_pool' | 'azurerm_lb_nat_pool' | 'azurerm_lb_nat_rule' | 'azurerm_lb_rule' | 'azurerm_local_network_gateway' | 'azurerm_network_interface' | 'azurerm_network_interface_application_security_group_association' | 'azurerm_network_interface_backend_address_pool_association' | 'azurerm_network_interface_security_group_association' | 'azurerm_network_security_group' | 'azurerm_public_ip' | 'azurerm_route' | 'azurerm_route_table' | 'azurerm_subnet' | 'azurerm_subnet_route_table_association' | 'azurerm_virtual_machine' | 'azurerm_virtual_network_gateway_connection' | 'azurerm_virtual_network' | 'azurerm_virtual_network_gateway' | 'google_compute_network' | 'google_compute_subnetwork' | 'google_compute_vpn_gateway' | 'google_compute_vpn_tunnel' | 'google_compute_route' | 'google_compute_address' | 'google_compute_global_address' | 'google_compute_router' | 'google_compute_interconnect_attachment' | 'google_compute_ha_vpn_gateway' | 'google_compute_forwarding_rule' | 'google_compute_network_firewall_policy' | 'google_compute_network_firewall_policy_rule' | 'cloudflare_static_route' | 'cloudflare_ipsec_tunnel'; sections: Array<PostApplyResources.Section>; state: { [key: string]: unknown }; tags: { [key: string]: string }; updated_at: string; url: string; managed_by?: Array<PostApplyResources.ManagedBy>; } export namespace PostApplyResources { export interface MonthlyCostEstimate { currency: string; monthly_cost: number; } export interface Observations { first_observed_at: string; last_observed_at: string; provider_id: string; resource_id: string; } export interface Section { hidden_items: Array<Section.HiddenItem>; name: string; visible_items: Array<Section.VisibleItem>; help_text?: string; } export namespace Section { export interface HiddenItem { helpText?: string; name?: string; value?: | HiddenItem.McnStringItem | HiddenItem.McnYamlItem | HiddenItem.McnYamlDiffItem | HiddenItem.McnResourcePreviewItem | HiddenItem.McnListItem; } export namespace HiddenItem { export interface McnStringItem { item_type: string; string: string; } export interface McnYamlItem { item_type: string; yaml: string; } export interface McnYamlDiffItem { item_type: string; yaml_diff: McnYamlDiffItem.YamlDiff; } export namespace McnYamlDiffItem { export interface YamlDiff { diff: string; left_description: string; left_yaml: string; right_description: string; right_yaml: string; } } export interface McnResourcePreviewItem { item_type: string; resource_preview: McnResourcePreviewItem.ResourcePreview; } export namespace McnResourcePreviewItem { export interface ResourcePreview { id: string; cloud_type: 'AWS' | 'AZURE' | 'GOOGLE' | 'CLOUDFLARE'; detail: string; name: string; resource_type: | 'aws_customer_gateway' | 'aws_egress_only_internet_gateway' | 'aws_internet_gateway' | 'aws_instance' | 'aws_network_interface' | 'aws_route' | 'aws_route_table' | 'aws_route_table_association' | 'aws_subnet' | 'aws_vpc' | 'aws_vpc_ipv4_cidr_block_association' | 'aws_vpn_connection' | 'aws_vpn_connection_route' | 'aws_vpn_gateway' | 'aws_security_group' | 'aws_vpc_security_group_ingress_rule' | 'aws_vpc_security_group_egress_rule' | 'aws_ec2_managed_prefix_list' | 'aws_ec2_transit_gateway' | 'aws_ec2_transit_gateway_prefix_list_reference' | 'aws_ec2_transit_gateway_vpc_attachment' | 'azurerm_application_security_group' | 'azurerm_lb' | 'azurerm_lb_backend_address_pool' | 'azurerm_lb_nat_pool' | 'azurerm_lb_nat_rule' | 'azurerm_lb_rule' | 'azurerm_local_network_gateway' | 'azurerm_network_interface' | 'azurerm_network_interface_application_security_group_association' | 'azurerm_network_interface_backend_address_pool_association' | 'azurerm_network_interface_security_group_association' | 'azurerm_network_security_group' | 'azurerm_public_ip' | 'azurerm_route' | 'azurerm_route_table' | 'azurerm_subnet' | 'azurerm_subnet_route_table_association' | 'azurerm_virtual_machine' | 'azurerm_virtual_network_gateway_connection' | 'azurerm_virtual_network' | 'azurerm_virtual_network_gateway' | 'google_compute_network' | 'google_compute_subnetwork' | 'google_compute_vpn_gateway' | 'google_compute_vpn_tunnel' | 'google_compute_route' | 'google_compute_address' | 'google_compute_global_address' | 'google_compute_router' | 'google_compute_interconnect_attachment' | 'google_compute_ha_vpn_gateway' | 'google_compute_forwarding_rule' | 'google_compute_network_firewall_policy' | 'google_compute_network_firewall_policy_rule' | 'cloudflare_static_route' | 'cloudflare_ipsec_tunnel'; title: string; } } export interface McnListItem { item_type: string; list: Array<McnListItem.McnStringItem | McnListItem.McnResourcePreviewItem>; } export namespace McnListItem { export interface McnStringItem { item_type: string; string: string; } export interface McnResourcePreviewItem { item_type: string; resource_preview: McnResourcePreviewItem.ResourcePreview; } export namespace McnResourcePreviewItem { export interface ResourcePreview { id: string; cloud_type: 'AWS' | 'AZURE' | 'GOOGLE' | 'CLOUDFLARE'; detail: string; name: string; resource_type: | 'aws_customer_gateway' | 'aws_egress_only_internet_gateway' | 'aws_internet_gateway' | 'aws_instance' | 'aws_network_interface' | 'aws_route' | 'aws_route_table' | 'aws_route_table_association' | 'aws_subnet' | 'aws_vpc' | 'aws_vpc_ipv4_cidr_block_association' | 'aws_vpn_connection' | 'aws_vpn_connection_route' | 'aws_vpn_gateway' | 'aws_security_group' | 'aws_vpc_security_group_ingress_rule' | 'aws_vpc_security_group_egress_rule' | 'aws_ec2_managed_prefix_list' | 'aws_ec2_transit_gateway' | 'aws_ec2_transit_gateway_prefix_list_reference' | 'aws_ec2_transit_gateway_vpc_attachment' | 'azurerm_application_security_group' | 'azurerm_lb' | 'azurerm_lb_backend_address_pool' | 'azurerm_lb_nat_pool' | 'azurerm_lb_nat_rule' | 'azurerm_lb_rule' | 'azurerm_local_network_gateway' | 'azurerm_network_interface' | 'azurerm_network_interface_application_security_group_association' | 'azurerm_network_interface_backend_address_pool_association' | 'azurerm_network_interface_security_group_association' | 'azurerm_network_security_group' | 'azurerm_public_ip' | 'azurerm_route' | 'azurerm_route_table' | 'azurerm_subnet' | 'azurerm_subnet_route_table_association' | 'azurerm_virtual_machine' | 'azurerm_virtual_network_gateway_connection' | 'azurerm_virtual_network' | 'azurerm_virtual_network_gateway' | 'google_compute_network' | 'google_compute_subnetwork' | 'google_compute_vpn_gateway' | 'google_compute_vpn_tunnel' | 'google_compute_route' | 'google_compute_address' | 'google_compute_global_address' | 'google_compute_router' | 'google_compute_interconnect_attachment' | 'google_compute_ha_vpn_gateway' | 'google_compute_forwarding_rule' | 'google_compute_network_firewall_policy' | 'google_compute_network_firewall_policy_rule' | 'cloudflare_static_route' | 'cloudflare_ipsec_tunnel'; title: string; } } } } export interface VisibleItem { helpText?: string; name?: string; value?: | VisibleItem.McnStringItem | VisibleItem.McnYamlItem | VisibleItem.McnYamlDiffItem | VisibleItem.McnResourcePreviewItem | VisibleItem.McnListItem; } export namespace VisibleItem { export interface McnStringItem { item_type: string; string: string; } export interface McnYamlItem { item_type: string; yaml: string; } export interface McnYamlDiffItem { item_type: string; yaml_diff: McnYamlDiffItem.YamlDiff; } export namespace McnYamlDiffItem { export interface YamlDiff { diff: string; left_description: string; left_yaml: string; right_description: string; right_yaml: string; } } export interface McnResourcePreviewItem { item_type: string; resource_preview: McnResourcePreviewItem.ResourcePreview; } export namespace McnResourcePreviewItem { export interface ResourcePreview { id: string; cloud_type: 'AWS' | 'AZURE' | 'GOOGLE' | 'CLOUDFLARE'; detail: string; name: string; resource_type: | 'aws_customer_gateway' | 'aws_egress_only_internet_gateway' | 'aws_internet_gateway' | 'aws_instance' | 'aws_network_interface' | 'aws_route' | 'aws_route_table' | 'aws_route_table_association' | 'aws_subnet' | 'aws_vpc' | 'aws_vpc_ipv4_cidr_block_association' | 'aws_vpn_connection' | 'aws_vpn_connection_route' | 'aws_vpn_gateway' | 'aws_security_group' | 'aws_vpc_security_group_ingress_rule' | 'aws_vpc_security_group_egress_rule' | 'aws_ec2_managed_prefix_list' | 'aws_ec2_transit_gateway' | 'aws_ec2_transit_gateway_prefix_list_reference' | 'aws_ec2_transit_gateway_vpc_attachment' | 'azurerm_application_security_group' | 'azurerm_lb' | 'azurerm_lb_backend_address_pool' | 'azurerm_lb_nat_pool' | 'azurerm_lb_nat_rule' | 'azurerm_lb_rule' | 'azurerm_local_network_gateway' | 'azurerm_network_interface' | 'azurerm_network_interface_application_security_group_association' | 'azurerm_network_interface_backend_address_pool_association' | 'azurerm_network_interface_security_group_association' | 'azurerm_network_security_group' | 'azurerm_public_ip' | 'azurerm_route' | 'azurerm_route_table' | 'azurerm_subnet' | 'azurerm_subnet_route_table_association' | 'azurerm_virtual_machine' | 'azurerm_virtual_network_gateway_connection' | 'azurerm_virtual_network' | 'azurerm_virtual_network_gateway' | 'google_compute_network' | 'google_compute_subnetwork' | 'google_compute_vpn_gateway' | 'google_compute_vpn_tunnel' | 'google_compute_route' | 'google_compute_address' | 'google_compute_global_address' | 'google_compute_router' | 'google_compute_interconnect_attachment' | 'google_compute_ha_vpn_gateway' | 'google_compute_forwarding_rule' | 'google_compute_network_firewall_policy' | 'google_compute_network_firewall_policy_rule' | 'cloudflare_static_route' | 'cloudflare_ipsec_tunnel'; title: string; } } export interface McnListItem { item_type: string; list: Array<McnListItem.McnStringItem | McnListItem.McnResourcePreviewItem>; } export namespace McnListItem { export interface McnStringItem { item_type: string; string: string; } export interface McnResourcePreviewItem { item_type: string; resource_preview: McnResourcePreviewItem.ResourcePreview; } export namespace McnResourcePreviewItem { export interface ResourcePreview { id: string; cloud_type: 'AWS' | 'AZURE' | 'GOOGLE' | 'CLOUDFLARE'; detail: string; name: string; resource_type: | 'aws_customer_gateway' | 'aws_egress_only_internet_gateway' | 'aws_internet_gateway' | 'aws_instance' | 'aws_network_interface' | 'aws_route' | 'aws_route_table' | 'aws_route_table_association' | 'aws_subnet' | 'aws_vpc' | 'aws_vpc_ipv4_cidr_block_association' | 'aws_vpn_connection' | 'aws_vpn_connection_route' | 'aws_vpn_gateway' | 'aws_security_group' | 'aws_vpc_security_group_ingress_rule' | 'aws_vpc_security_group_egress_rule' | 'aws_ec2_managed_prefix_list' | 'aws_ec2_transit_gateway' | 'aws_ec2_transit_gateway_prefix_list_reference' | 'aws_ec2_transit_gateway_vpc_attachment' | 'azurerm_application_security_group' | 'azurerm_lb' | 'azurerm_lb_backend_address_pool' | 'azurerm_lb_nat_pool' | 'azurerm_lb_nat_rule' | 'azurerm_lb_rule' | 'azurerm_local_network_gateway' | 'azurerm_network_interface' | 'azurerm_network_interface_application_security_group_association' | 'azurerm_network_interface_backend_address_pool_association' | 'azurerm_network_interface_security_group_association' | 'azurerm_network_security_group' | 'azurerm_public_ip' | 'azurerm_route' | 'azurerm_route_table' | 'azurerm_subnet' | 'azurerm_subnet_route_table_association' | 'azurerm_virtual_machine' | 'azurerm_virtual_network_gateway_connection' | 'azurerm_virtual_network' | 'azurerm_virtual_network_gateway' | 'google_compute_network' | 'google_compute_subnetwork' | 'google_compute_vpn_gateway' | 'google_compute_vpn_tunnel' | 'google_compute_route' | 'google_compute_address' | 'google_compute_global_address' | 'google_compute_router' | 'google_compute_interconnect_attachment' | 'google_compute_ha_vpn_gateway' | 'google_compute_forwarding_rule' | 'google_compute_network_firewall_policy' | 'google_compute_network_firewall_policy_rule' | 'cloudflare_static_route' | 'cloudflare_ipsec_tunnel'; title: string; } } } } } export interface ManagedBy { id: string; client_type: 'MAGIC_WAN_CLOUD_ONRAMP'; name: string; } } export interface Status { apply_progress: Status.ApplyProgress; lifecycle_state: | 'OnrampNeedsApply' | 'OnrampPendingPlan' | 'OnrampPlanning' | 'OnrampPlanFailed' | 'OnrampPendingApproval' | 'OnrampPendingApply' | 'OnrampApplying' | 'OnrampApplyFailed' | 'OnrampActive' | 'OnrampPendingDestroy' | 'OnrampDestroying' | 'OnrampDestroyFailed'; plan_progress: Status.PlanProgress; routes: Array<string>; tunnels: Array<string>; lifecycle_errors?: { [key: string]: Status.LifecycleErrors }; } export namespace Status { export interface ApplyProgress { done: number; total: number; } export interface PlanProgress { done: number; total: number; } export interface LifecycleErrors { code: | 1001 | 1002 | 1003 | 1004 | 1005 | 1006 | 1007 | 1008 | 1009 | 1010 | 1011 | 1012 | 1013 | 1014 | 1015 | 1016 | 1017 | 2001 | 2002 | 2003 | 2004 | 2005 | 2006 | 2007 | 2008 | 2009 | 2010 | 2011 | 2012 | 2013 | 2014 | 2015 | 2016 | 2017 | 2018 | 2019 | 2020 | 2021 | 2022 | 3001 | 3002 | 3003 | 3004 | 3005 | 3006 | 3007 | 4001 | 4002 | 4003 | 4004 | 4005 | 4006 | 4007 | 4008 | 4009 | 4010 | 4011 | 4012 | 4013 | 4014 | 4015 | 4016 | 4017 | 4018 | 4019 | 4020 | 4021 | 4022 | 4023 | 5001 | 5002 | 5003 | 5004 | 102000 | 102001 | 102002 | 102003 | 102004 | 102005 | 102006 | 102007 | 102008 | 102009 | 102010 | 102011 | 102012 | 102013 | 102014 | 102015 | 102016 | 102017 | 102018 | 102019 | 102020 | 102021 | 102022 | 102023 | 102024 | 102025 | 102026 | 102027 | 102028 | 102029 | 102030 | 102031 | 102032 | 102033 | 102034 | 102035 | 102036 | 102037 | 102038 | 102039 | 102040 | 102041 | 102042 | 102043 | 102044 | 102045 | 102046 | 102047 | 102048 | 102049 | 102050 | 102051 | 102052 | 102053 | 102054 | 102055 | 102056 | 102057 | 102058 | 102059 | 102060 | 102061 | 102062 | 102063 | 102064 | 102065 | 102066 | 103001 | 103002 | 103003 | 103004 | 103005 | 103006 | 103007 | 103008; message: string; documentation_url?: string; meta?: LifecycleErrors.Meta; source?: LifecycleErrors.Source; } export namespace LifecycleErrors { export interface Meta { l10n_key?: string; loggable_error?: string; template_data?: unknown; trace_id?: string; } export interface Source { parameter?: string; parameter_value_index?: number; pointer?: string; } } } export interface VPCsByID { id: string; account_id: string; cloud_type: 'AWS' | 'AZURE' | 'GOOGLE' | 'CLOUDFLARE'; config: { [key: string]: unknown }; deployment_provider: string; managed: boolean; monthly_cost_estimate: VPCsByID.MonthlyCostEstimate; name: string; native_id: string; observations: { [key: string]: VPCsByID.Observations }; provider_ids: Array<string>; provider_names_by_id: { [key: string]: string }; region: string; resource_group: string; resource_type: | 'aws_customer_gateway' | 'aws_egress_only_internet_gateway' | 'aws_internet_gateway' | 'aws_instance' | 'aws_network_interface' | 'aws_route' | 'aws_route_table' | 'aws_route_table_association' | 'aws_subnet' | 'aws_vpc' | 'aws_vpc_ipv4_cidr_block_association' | 'aws_vpn_connection' | 'aws_vpn_connection_route' | 'aws_vpn_gateway' | 'aws_security_group' | 'aws_vpc_security_group_ingress_rule' | 'aws_vpc_security_group_egress_rule' | 'aws_ec2_managed_prefix_list' | 'aws_ec2_transit_gateway' | 'aws_ec2_transit_gateway_prefix_list_reference' | 'aws_ec2_transit_gateway_vpc_attachment' | 'azurerm_application_security_group' | 'azurerm_lb' | 'azurerm_lb_backend_address_pool' | 'azurerm_lb_nat_pool' | 'azurerm_lb_nat_rule' | 'azurerm_lb_rule' | 'azurerm_local_network_gateway' | 'azurerm_network_interface' | 'azurerm_network_interface_application_security_group_association' | 'azurerm_network_interface_backend_address_pool_association' | 'azurerm_network_interface_security_group_association' | 'azurerm_network_security_group' | 'azurerm_public_ip' | 'azurerm_route' | 'azurerm_route_table' | 'azurerm_subnet' | 'azurerm_subnet_route_table_association' | 'azurerm_virtual_machine' | 'azurerm_virtual_network_gateway_connection' | 'azurerm_virtual_network' | 'azurerm_virtual_network_gateway' | 'google_compute_network' | 'google_compute_subnetwork' | 'google_compute_vpn_gateway' | 'google_compute_vpn_tunnel' | 'google_compute_route' | 'google_compute_address' | 'google_compute_global_address' | 'google_compute_router' | 'google_compute_interconnect_attachment' | 'google_compute_ha_vpn_gateway' | 'google_compute_forwarding_rule' | 'google_compute_network_firewall_policy' | 'google_compute_network_firewall_policy_rule' | 'cloudflare_static_route' | 'cloudflare_ipsec_tunnel'; sections: Array<VPCsByID.Section>; state: { [key: string]: unknown }; tags: { [key: string]: string }; updated_at: string; url: string; managed_by?: Array<VPCsByID.ManagedBy>; } export namespace VPCsByID { export interface MonthlyCostEstimate { currency: string; monthly_cost: number; } export interface Observations { first_observed_at: string; last_observed_at: string; provider_id: string; resource_id: string; } export interface Section { hidden_items: Array<Section.HiddenItem>; name: string; visible_items: Array<Section.VisibleItem>; help_text?: string; } export namespace Section { export interface HiddenItem { helpText?: string; name?: string; value?: | HiddenItem.McnStringItem | HiddenItem.McnYamlItem | HiddenItem.McnYamlDiffItem | HiddenItem.McnResourcePreviewItem | HiddenItem.McnListItem; } export namespace HiddenItem { export interface McnStringItem { item_type: string; string: string; } export interface McnYamlItem { item_type: string; yaml: string; } export interface McnYamlDiffItem { item_type: string; yaml_diff: McnYamlDiffItem.YamlDiff; } export namespace McnYamlDiffItem { export interface YamlDiff { diff: string; left_description: string; left_yaml: string; right_description: string; right_yaml: string; } } export interface McnResourcePreviewItem { item_type: string; resource_preview: McnResourcePreviewItem.ResourcePreview; } export namespace McnResourcePreviewItem { export interface ResourcePreview { id: string; cloud_type: 'AWS' | 'AZURE' | 'GOOGLE' | 'CLOUDFLARE'; detail: string; name: string; resource_type: | 'aws_customer_gateway' | 'aws_egress_only_internet_gateway' | 'aws_internet_gateway' | 'aws_instance' | 'aws_network_interface' | 'aws_route' | 'aws_route_table' | 'aws_route_table_association' | 'aws_subnet' | 'aws_vpc' | 'aws_vpc_ipv4_cidr_block_association' | 'aws_vpn_connection' | 'aws_vpn_connection_route' | 'aws_vpn_gateway' | 'aws_security_group' | 'aws_vpc_security_group_ingress_rule' | 'aws_vpc_security_group_egress_rule' | 'aws_ec2_managed_prefix_list' | 'aws_ec2_transit_gateway' | 'aws_ec2_transit_gateway_prefix_list_reference' | 'aws_ec2_transit_gateway_vpc_attachment' | 'azurerm_application_security_group' | 'azurerm_lb' | 'azurerm_lb_backend_address_pool' | 'azurerm_lb_nat_pool' | 'azurerm_lb_nat_rule' | 'azurerm_lb_rule' | 'azurerm_local_network_gateway' | 'azurerm_network_interface' | 'azurerm_network_interface_application_security_group_association' | 'azurerm_network_interface_backend_address_pool_association' | 'azurerm_network_interface_security_group_association' | 'azurerm_network_security_group' | 'azurerm_public_ip' | 'azurerm_route' | 'azurerm_route_table' | 'azurerm_subnet' | 'azurerm_subnet_route_table_association' | 'azurerm_virtual_machine' | 'azurerm_virtual_network_gateway_connection' | 'azurerm_virtual_network' | 'azurerm_virtual_network_gateway' | 'google_compute_network' | 'google_compute_subnetwork' | 'google_compute_vpn_gateway' | 'google_compute_vpn_tunnel' | 'google_compute_route' | 'google_compute_address' | 'google_compute_global_address' | 'google_compute_router' | 'google_compute_interconnect_attachment' | 'google_compute_ha_vpn_gateway' | 'google_compute_forwarding_rule' | 'google_compute_network_firewall_policy' | 'google_compute_network_firewall_policy_rule' | 'cloudflare_static_route' | 'cloudflare_ipsec_tunnel'; title: string; } } export interface McnListItem { item_type: string; list: Array<McnListItem.McnStringItem | McnListItem.McnResourcePreviewItem>; } export namespace McnListItem { export interface McnStringItem { item_type: string; string: string; } export interface McnResourcePreviewItem { item_type: string; resource_preview: McnResourcePreviewItem.ResourcePreview; } export namespace McnResourcePreviewItem { export interface ResourcePreview { id: string; cloud_type: 'AWS' | 'AZURE' | 'GOOGLE' | 'CLOUDFLARE'; detail: string; name: string; resource_type: | 'aws_customer_gateway' | 'aws_egress_only_internet_gateway' | 'aws_internet_gateway' | 'aws_instance' | 'aws_network_interface' | 'aws_route' | 'aws_route_table' | 'aws_route_table_association' | 'aws_subnet' | 'aws_vpc' | 'aws_vpc_ipv4_cidr_block_association' | 'aws_vpn_connection' | 'aws_vpn_connection_route' | 'aws_vpn_gateway' | 'aws_security_group' | 'aws_vpc_security_group_ingress_rule' | 'aws_vpc_security_group_egress_rule' | 'aws_ec2_managed_prefix_list' | 'aws_ec2_transit_gateway' | 'aws_ec2_transit_gateway_prefix_list_reference' | 'aws_ec2_transit_gateway_vpc_attachment' | 'azurerm_application_security_group' | 'azurerm_lb' | 'azurerm_lb_backend_address_pool' | 'azurerm_lb_nat_pool' | 'azurerm_lb_nat_rule' | 'azurerm_lb_rule' | 'azurerm_local_network_gateway' | 'azurerm_network_interface' | 'azurerm_network_interface_application_security_group_association' | 'azurerm_network_interface_backend_address_pool_association' | 'azurerm_network_interface_security_group_association' | 'azurerm_network_security_group' | 'azurerm_public_ip' | 'azurerm_route' | 'azurerm_route_table' | 'azurerm_subnet' | 'azurerm_subnet_route_table_association' | 'azurerm_virtual_machine' | 'azurerm_virtual_network_gateway_connection' | 'azurerm_virtual_network' | 'azurerm_virtual_network_gateway' | 'google_compute_network' | 'google_compute_subnetwork' | 'google_compute_vpn_gateway' | 'google_compute_vpn_tunnel' | 'google_compute_route' | 'google_compute_address' | 'google_compute_global_address' | 'google_compute_router' | 'google_compute_interconnect_attachment' | 'google_compute_ha_vpn_gateway' | 'google_compute_forwarding_rule' | 'google_compute_network_firewall_policy' | 'google_compute_network_firewall_policy_rule' | 'cloudflare_static_route' | 'cloudflare_ipsec_tunnel'; title: string; } } } } export interface VisibleItem { helpText?: string; name?: string; value?: | VisibleItem.McnStringItem | VisibleItem.McnYamlItem | VisibleItem.McnYamlDiffItem | VisibleItem.McnResourcePreviewItem | VisibleItem.McnListItem; } export namespace VisibleItem { export interface McnStringItem { item_type: string; string: string; } export interface McnYamlItem { item_type: string; yaml: string; } export interface McnYamlDiffItem { item_type: string; yaml_diff: McnYamlDiffItem.YamlDiff; } export namespace McnYamlDiffItem { export interface YamlDiff { diff: string; left_description: string; left_yaml: string; right_description: string; right_yaml: string; } } export interface McnResourcePreviewItem { item_type: string; resource_preview: McnResourcePreviewItem.ResourcePreview; } export namespace McnResourcePreviewItem { export interface ResourcePreview { id: string; cloud_type: 'AWS' | 'AZURE' | 'GOOGLE' | 'CLOUDFLARE'; detail: string; name: string; resource_type: | 'aws_customer_gateway' | 'aws_egress_only_internet_gateway' | 'aws_internet_gateway' | 'aws_instance' | 'aws_network_interface' | 'aws_route' | 'aws_route_table' | 'aws_route_table_association' | 'aws_subnet' | 'aws_vpc' | 'aws_vpc_ipv4_cidr_block_association' | 'aws_vpn_connection' | 'aws_vpn_connection_route' | 'aws_vpn_gateway' | 'aws_security_group' | 'aws_vpc_security_group_ingress_rule' | 'aws_vpc_security_group_egress_rule' | 'aws_ec2_managed_prefix_list' | 'aws_ec2_transit_gateway' | 'aws_ec2_transit_gateway_prefix_list_reference' | 'aws_ec2_transit_gateway_vpc_attachment' | 'azurerm_application_security_group' | 'azurerm_lb' | 'azurerm_lb_backend_address_pool' | 'azurerm_lb_nat_pool' | 'azurerm_lb_nat_rule' | 'azurerm_lb_rule' | 'azurerm_local_network_gateway' | 'azurerm_network_interface' | 'azurerm_network_interface_application_security_group_association' | 'azurerm_network_interface_backend_address_pool_association' | 'azurerm_network_interface_security_group_association' | 'azurerm_network_security_group' | 'azurerm_public_ip' | 'azurerm_route' | 'azurerm_route_table' | 'azurerm_subnet' | 'azurerm_subnet_route_table_association' | 'azurerm_virtual_machine' | 'azurerm_virtual_network_gateway_connection' | 'azurerm_virtual_network' | 'azurerm_virtual_network_gateway' | 'google_compute_network' | 'google_compute_subnetwork' | 'google_compute_vpn_gateway' | 'google_compute_vpn_tunnel' | 'google_compute_route' | 'google_compute_address' | 'google_compute_global_address' | 'google_compute_router' | 'google_compute_interconnect_attachment' | 'google_compute_ha_vpn_gateway' | 'google_compute_forwarding_rule' | 'google_compute_network_firewall_policy' | 'google_compute_network_firewall_policy_rule' | 'cloudflare_static_route' | 'cloudflare_ipsec_tunnel'; title: string; } } export interface McnListItem { item_type: string; list: Array<McnListItem.McnStringItem | McnListItem.McnResourcePreviewItem>; } export namespace McnListItem { export interface McnStringItem { item_type: string; string: string; } export interface McnResourcePreviewItem { item_type: string; resource_preview: McnResourcePreviewItem.ResourcePreview; } export namespace McnResourcePreviewItem { export interface ResourcePreview { id: string; cloud_type: 'AWS' | 'AZURE' | 'GOOGLE' | 'CLOUDFLARE'; detail: string; name: string; resource_type: | 'aws_customer_gateway' | 'aws_egress_only_internet_gateway' | 'aws_internet_gateway' | 'aws_instance' | 'aws_network_interface' | 'aws_route' | 'aws_route_table' | 'aws_route_table_association' | 'aws_subnet' | 'aws_vpc' | 'aws_vpc_ipv4_cidr_block_association' | 'aws_vpn_connection' | 'aws_vpn_connection_route' | 'aws_vpn_gateway' | 'aws_security_group' | 'aws_vpc_security_group_ingress_rule' | 'aws_vpc_security_group_egress_rule' | 'aws_ec2_managed_prefix_list' | 'aws_ec2_transit_gateway' | 'aws_ec2_transit_gateway_prefix_list_reference' | 'aws_ec2_transit_gateway_vpc_attachment' | 'azurerm_application_security_group' | 'azurerm_lb' | 'azurerm_lb_backend_address_pool' | 'azurerm_lb_nat_pool' | 'azurerm_lb_nat_rule' | 'azurerm_lb_rule' | 'azurerm_local_network_gateway' | 'azurerm_network_interface' | 'azurerm_network_interface_application_security_group_association' | 'azurerm_network_interface_backend_address_pool_association' | 'azurerm_network_interface_security_group_association' | 'azurerm_network_security_group' | 'azurerm_public_ip' | 'azurerm_route' | 'azurerm_route_table' | 'azurerm_subnet' | 'azurerm_subnet_route_table_association' | 'azurerm_virtual_machine' | 'azurerm_virtual_network_gateway_connection' | 'azurerm_virtual_network' | 'azurerm_virtual_network_gateway' | 'google_compute_network' | 'google_compute_subnetwork' | 'google_compute_vpn_gateway' | 'google_compute_vpn_tunnel' | 'google_compute_route' | 'google_compute_address'