cloudflare
Version:
The official TypeScript library for the Cloudflare API
160 lines • 4.16 kB
TypeScript
import * as Core from 'cloudflare/core';
import { APIResource } from 'cloudflare/resource';
import * as WANsAPI from 'cloudflare/resources/magic-transit/sites/wans';
import { SinglePage } from 'cloudflare/pagination';
export declare class WANs extends APIResource {
/**
* Creates a new WAN.
*/
create(siteId: string, params: WANCreateParams, options?: Core.RequestOptions): Core.APIPromise<WANCreateResponse>;
/**
* Update a specific WAN.
*/
update(siteId: string, wanId: string, params: WANUpdateParams, options?: Core.RequestOptions): Core.APIPromise<WAN>;
/**
* Lists WANs associated with an account and site.
*/
list(siteId: string, params: WANListParams, options?: Core.RequestOptions): Core.PagePromise<WANsSinglePage, WAN>;
/**
* Remove a specific WAN.
*/
delete(siteId: string, wanId: string, params: WANDeleteParams, options?: Core.RequestOptions): Core.APIPromise<WAN>;
/**
* Get a specific WAN.
*/
get(siteId: string, wanId: string, params: WANGetParams, options?: Core.RequestOptions): Core.APIPromise<WAN>;
}
export declare class WANsSinglePage extends SinglePage<WAN> {
}
export interface WAN {
/**
* Identifier
*/
id?: string;
name?: string;
physport?: number;
/**
* Priority of WAN for traffic loadbalancing.
*/
priority?: number;
/**
* Identifier
*/
site_id?: string;
/**
* (optional) if omitted, use DHCP. Submit secondary_address when site is in high
* availability mode.
*/
static_addressing?: WANStaticAddressing;
/**
* VLAN port number.
*/
vlan_tag?: number;
}
/**
* (optional) if omitted, use DHCP. Submit secondary_address when site is in high
* availability mode.
*/
export interface WANStaticAddressing {
/**
* A valid CIDR notation representing an IP range.
*/
address: string;
/**
* A valid IPv4 address.
*/
gateway_address: string;
/**
* A valid CIDR notation representing an IP range.
*/
secondary_address?: string;
}
export type WANCreateResponse = Array<WAN>;
export interface WANCreateParams {
/**
* Path param: Identifier
*/
account_id: string;
/**
* Body param:
*/
physport: number;
/**
* Body param: VLAN port number.
*/
vlan_tag: number;
/**
* Body param:
*/
name?: string;
/**
* Body param:
*/
priority?: number;
/**
* Body param: (optional) if omitted, use DHCP. Submit secondary_address when site
* is in high availability mode.
*/
static_addressing?: WANStaticAddressing;
}
export interface WANUpdateParams {
/**
* Path param: Identifier
*/
account_id: string;
/**
* Body param:
*/
name?: string;
/**
* Body param:
*/
physport?: number;
/**
* Body param:
*/
priority?: number;
/**
* Body param: (optional) if omitted, use DHCP. Submit secondary_address when site
* is in high availability mode.
*/
static_addressing?: WANStaticAddressing;
/**
* Body param: VLAN port number.
*/
vlan_tag?: number;
}
export interface WANListParams {
/**
* Identifier
*/
account_id: string;
}
export interface WANDeleteParams {
/**
* Path param: Identifier
*/
account_id: string;
/**
* Body param:
*/
body: unknown;
}
export interface WANGetParams {
/**
* Identifier
*/
account_id: string;
}
export declare namespace WANs {
export import WAN = WANsAPI.WAN;
export import WANStaticAddressing = WANsAPI.WANStaticAddressing;
export import WANCreateResponse = WANsAPI.WANCreateResponse;
export import WANsSinglePage = WANsAPI.WANsSinglePage;
export import WANCreateParams = WANsAPI.WANCreateParams;
export import WANUpdateParams = WANsAPI.WANUpdateParams;
export import WANListParams = WANsAPI.WANListParams;
export import WANDeleteParams = WANsAPI.WANDeleteParams;
export import WANGetParams = WANsAPI.WANGetParams;
}
//# sourceMappingURL=wans.d.ts.map