cloudflare
Version:
The official TypeScript library for the Cloudflare API
296 lines • 11 kB
TypeScript
import * as Core from 'cloudflare/core';
import { APIResource } from 'cloudflare/resource';
import * as AddressMapsAPI from 'cloudflare/resources/addressing/address-maps/address-maps';
import * as AccountsAPI from 'cloudflare/resources/addressing/address-maps/accounts';
import * as IPsAPI from 'cloudflare/resources/addressing/address-maps/ips';
import * as ZonesAPI from 'cloudflare/resources/addressing/address-maps/zones';
import { SinglePage } from 'cloudflare/pagination';
export declare class AddressMaps extends APIResource {
accounts: AccountsAPI.Accounts;
ips: IPsAPI.IPs;
zones: ZonesAPI.Zones;
/**
* Create a new address map under the account.
*/
create(params: AddressMapCreateParams, options?: Core.RequestOptions): Core.APIPromise<AddressMapCreateResponse>;
/**
* List all address maps owned by the account.
*/
list(params: AddressMapListParams, options?: Core.RequestOptions): Core.PagePromise<AddressingAddressMapsSinglePage, AddressingAddressMaps>;
/**
* Delete a particular address map owned by the account. An Address Map must be
* disabled before it can be deleted.
*/
delete(addressMapId: string, params: AddressMapDeleteParams, options?: Core.RequestOptions): Core.APIPromise<AddressMapDeleteResponse | null>;
/**
* Modify properties of an address map owned by the account.
*/
edit(addressMapId: string, params: AddressMapEditParams, options?: Core.RequestOptions): Core.APIPromise<AddressingAddressMaps>;
/**
* Show a particular address map owned by the account.
*/
get(addressMapId: string, params: AddressMapGetParams, options?: Core.RequestOptions): Core.APIPromise<AddressMapGetResponse>;
}
export declare class AddressingAddressMapsSinglePage extends SinglePage<AddressingAddressMaps> {
}
export interface AddressingAddressMaps {
/**
* Identifier
*/
id?: string;
/**
* If set to false, then the Address Map cannot be deleted via API. This is true
* for Cloudflare-managed maps.
*/
can_delete?: boolean;
/**
* If set to false, then the IPs on the Address Map cannot be modified via the API.
* This is true for Cloudflare-managed maps.
*/
can_modify_ips?: boolean;
created_at?: string;
/**
* If you have legacy TLS clients which do not send the TLS server name indicator,
* then you can specify one default SNI on the map. If Cloudflare receives a TLS
* handshake from a client without an SNI, it will respond with the default SNI on
* those IPs. The default SNI can be any valid zone or subdomain owned by the
* account.
*/
default_sni?: string | null;
/**
* An optional description field which may be used to describe the types of IPs or
* zones on the map.
*/
description?: string | null;
/**
* Whether the Address Map is enabled or not. Cloudflare's DNS will not respond
* with IP addresses on an Address Map until the map is enabled.
*/
enabled?: boolean | null;
modified_at?: string;
}
export interface AddressMapCreateResponse {
/**
* Identifier
*/
id?: string;
/**
* If set to false, then the Address Map cannot be deleted via API. This is true
* for Cloudflare-managed maps.
*/
can_delete?: boolean;
/**
* If set to false, then the IPs on the Address Map cannot be modified via the API.
* This is true for Cloudflare-managed maps.
*/
can_modify_ips?: boolean;
created_at?: string;
/**
* If you have legacy TLS clients which do not send the TLS server name indicator,
* then you can specify one default SNI on the map. If Cloudflare receives a TLS
* handshake from a client without an SNI, it will respond with the default SNI on
* those IPs. The default SNI can be any valid zone or subdomain owned by the
* account.
*/
default_sni?: string | null;
/**
* An optional description field which may be used to describe the types of IPs or
* zones on the map.
*/
description?: string | null;
/**
* Whether the Address Map is enabled or not. Cloudflare's DNS will not respond
* with IP addresses on an Address Map until the map is enabled.
*/
enabled?: boolean | null;
/**
* The set of IPs on the Address Map.
*/
ips?: Array<AddressMapCreateResponse.IP>;
/**
* Zones and Accounts which will be assigned IPs on this Address Map. A zone
* membership will take priority over an account membership.
*/
memberships?: Array<AddressMapCreateResponse.Membership>;
modified_at?: string;
}
export declare namespace AddressMapCreateResponse {
interface IP {
created_at?: string;
/**
* An IPv4 or IPv6 address.
*/
ip?: string;
}
interface Membership {
/**
* Controls whether the membership can be deleted via the API or not.
*/
can_delete?: boolean;
created_at?: string;
/**
* Identifier
*/
identifier?: string;
/**
* The type of the membership.
*/
kind?: 'zone' | 'account';
}
}
export type AddressMapDeleteResponse = unknown | Array<unknown> | string;
export interface AddressMapGetResponse {
/**
* Identifier
*/
id?: string;
/**
* If set to false, then the Address Map cannot be deleted via API. This is true
* for Cloudflare-managed maps.
*/
can_delete?: boolean;
/**
* If set to false, then the IPs on the Address Map cannot be modified via the API.
* This is true for Cloudflare-managed maps.
*/
can_modify_ips?: boolean;
created_at?: string;
/**
* If you have legacy TLS clients which do not send the TLS server name indicator,
* then you can specify one default SNI on the map. If Cloudflare receives a TLS
* handshake from a client without an SNI, it will respond with the default SNI on
* those IPs. The default SNI can be any valid zone or subdomain owned by the
* account.
*/
default_sni?: string | null;
/**
* An optional description field which may be used to describe the types of IPs or
* zones on the map.
*/
description?: string | null;
/**
* Whether the Address Map is enabled or not. Cloudflare's DNS will not respond
* with IP addresses on an Address Map until the map is enabled.
*/
enabled?: boolean | null;
/**
* The set of IPs on the Address Map.
*/
ips?: Array<AddressMapGetResponse.IP>;
/**
* Zones and Accounts which will be assigned IPs on this Address Map. A zone
* membership will take priority over an account membership.
*/
memberships?: Array<AddressMapGetResponse.Membership>;
modified_at?: string;
}
export declare namespace AddressMapGetResponse {
interface IP {
created_at?: string;
/**
* An IPv4 or IPv6 address.
*/
ip?: string;
}
interface Membership {
/**
* Controls whether the membership can be deleted via the API or not.
*/
can_delete?: boolean;
created_at?: string;
/**
* Identifier
*/
identifier?: string;
/**
* The type of the membership.
*/
kind?: 'zone' | 'account';
}
}
export interface AddressMapCreateParams {
/**
* Path param: Identifier
*/
account_id: string;
/**
* Body param: An optional description field which may be used to describe the
* types of IPs or zones on the map.
*/
description?: string | null;
/**
* Body param: Whether the Address Map is enabled or not. Cloudflare's DNS will not
* respond with IP addresses on an Address Map until the map is enabled.
*/
enabled?: boolean | null;
}
export interface AddressMapListParams {
/**
* Identifier
*/
account_id: string;
}
export interface AddressMapDeleteParams {
/**
* Identifier
*/
account_id: string;
}
export interface AddressMapEditParams {
/**
* Path param: Identifier
*/
account_id: string;
/**
* Body param: If you have legacy TLS clients which do not send the TLS server name
* indicator, then you can specify one default SNI on the map. If Cloudflare
* receives a TLS handshake from a client without an SNI, it will respond with the
* default SNI on those IPs. The default SNI can be any valid zone or subdomain
* owned by the account.
*/
default_sni?: string | null;
/**
* Body param: An optional description field which may be used to describe the
* types of IPs or zones on the map.
*/
description?: string | null;
/**
* Body param: Whether the Address Map is enabled or not. Cloudflare's DNS will not
* respond with IP addresses on an Address Map until the map is enabled.
*/
enabled?: boolean | null;
}
export interface AddressMapGetParams {
/**
* Identifier
*/
account_id: string;
}
export declare namespace AddressMaps {
export import AddressingAddressMaps = AddressMapsAPI.AddressingAddressMaps;
export import AddressMapCreateResponse = AddressMapsAPI.AddressMapCreateResponse;
export import AddressMapDeleteResponse = AddressMapsAPI.AddressMapDeleteResponse;
export import AddressMapGetResponse = AddressMapsAPI.AddressMapGetResponse;
export import AddressingAddressMapsSinglePage = AddressMapsAPI.AddressingAddressMapsSinglePage;
export import AddressMapCreateParams = AddressMapsAPI.AddressMapCreateParams;
export import AddressMapListParams = AddressMapsAPI.AddressMapListParams;
export import AddressMapDeleteParams = AddressMapsAPI.AddressMapDeleteParams;
export import AddressMapEditParams = AddressMapsAPI.AddressMapEditParams;
export import AddressMapGetParams = AddressMapsAPI.AddressMapGetParams;
export import Accounts = AccountsAPI.Accounts;
export import AccountUpdateResponse = AccountsAPI.AccountUpdateResponse;
export import AccountDeleteResponse = AccountsAPI.AccountDeleteResponse;
export import AccountUpdateParams = AccountsAPI.AccountUpdateParams;
export import AccountDeleteParams = AccountsAPI.AccountDeleteParams;
export import IPs = IPsAPI.IPs;
export import IPUpdateResponse = IPsAPI.IPUpdateResponse;
export import IPDeleteResponse = IPsAPI.IPDeleteResponse;
export import IPUpdateParams = IPsAPI.IPUpdateParams;
export import IPDeleteParams = IPsAPI.IPDeleteParams;
export import Zones = ZonesAPI.Zones;
export import ZoneUpdateResponse = ZonesAPI.ZoneUpdateResponse;
export import ZoneDeleteResponse = ZonesAPI.ZoneDeleteResponse;
export import ZoneUpdateParams = ZonesAPI.ZoneUpdateParams;
export import ZoneDeleteParams = ZonesAPI.ZoneDeleteParams;
}
//# sourceMappingURL=address-maps.d.ts.map