cloudflare
Version:
The official TypeScript library for the Cloudflare API
150 lines • 5.23 kB
TypeScript
import * as Core from 'cloudflare/core';
import { APIResource } from 'cloudflare/resource';
import * as PrefixesAPI from 'cloudflare/resources/addressing/prefixes/prefixes';
import * as DelegationsAPI from 'cloudflare/resources/addressing/prefixes/delegations';
import * as BGPAPI from 'cloudflare/resources/addressing/prefixes/bgp/bgp';
import { SinglePage } from 'cloudflare/pagination';
export declare class Prefixes extends APIResource {
bgp: BGPAPI.BGP;
delegations: DelegationsAPI.Delegations;
/**
* Add a new prefix under the account.
*/
create(params: PrefixCreateParams, options?: Core.RequestOptions): Core.APIPromise<AddressingIpamPrefixes>;
/**
* List all prefixes owned by the account.
*/
list(params: PrefixListParams, options?: Core.RequestOptions): Core.PagePromise<AddressingIpamPrefixesSinglePage, AddressingIpamPrefixes>;
/**
* Delete an unapproved prefix owned by the account.
*/
delete(prefixId: string, params: PrefixDeleteParams, options?: Core.RequestOptions): Core.APIPromise<PrefixDeleteResponse | null>;
/**
* Modify the description for a prefix owned by the account.
*/
edit(prefixId: string, params: PrefixEditParams, options?: Core.RequestOptions): Core.APIPromise<AddressingIpamPrefixes>;
/**
* List a particular prefix owned by the account.
*/
get(prefixId: string, params: PrefixGetParams, options?: Core.RequestOptions): Core.APIPromise<AddressingIpamPrefixes>;
}
export declare class AddressingIpamPrefixesSinglePage extends SinglePage<AddressingIpamPrefixes> {
}
export interface AddressingIpamPrefixes {
/**
* Identifier
*/
id?: string;
/**
* Identifier
*/
account_id?: string;
/**
* Prefix advertisement status to the Internet. This field is only not 'null' if on
* demand is enabled.
*/
advertised?: boolean | null;
/**
* Last time the advertisement status was changed. This field is only not 'null' if
* on demand is enabled.
*/
advertised_modified_at?: string | null;
/**
* Approval state of the prefix (P = pending, V = active).
*/
approved?: string;
/**
* Autonomous System Number (ASN) the prefix will be advertised under.
*/
asn?: number | null;
/**
* IP Prefix in Classless Inter-Domain Routing format.
*/
cidr?: string;
created_at?: string;
/**
* Description of the prefix.
*/
description?: string;
/**
* Identifier for the uploaded LOA document.
*/
loa_document_id?: string | null;
modified_at?: string;
/**
* Whether advertisement of the prefix to the Internet may be dynamically enabled
* or disabled.
*/
on_demand_enabled?: boolean;
/**
* Whether advertisement status of the prefix is locked, meaning it cannot be
* changed.
*/
on_demand_locked?: boolean;
}
export type PrefixDeleteResponse = unknown | Array<unknown> | string;
export interface PrefixCreateParams {
/**
* Path param: Identifier
*/
account_id: string;
/**
* Body param: Autonomous System Number (ASN) the prefix will be advertised under.
*/
asn: number | null;
/**
* Body param: IP Prefix in Classless Inter-Domain Routing format.
*/
cidr: string;
/**
* Body param: Identifier for the uploaded LOA document.
*/
loa_document_id: string | null;
}
export interface PrefixListParams {
/**
* Identifier
*/
account_id: string;
}
export interface PrefixDeleteParams {
/**
* Identifier
*/
account_id: string;
}
export interface PrefixEditParams {
/**
* Path param: Identifier
*/
account_id: string;
/**
* Body param: Description of the prefix.
*/
description: string;
}
export interface PrefixGetParams {
/**
* Identifier
*/
account_id: string;
}
export declare namespace Prefixes {
export import AddressingIpamPrefixes = PrefixesAPI.AddressingIpamPrefixes;
export import PrefixDeleteResponse = PrefixesAPI.PrefixDeleteResponse;
export import AddressingIpamPrefixesSinglePage = PrefixesAPI.AddressingIpamPrefixesSinglePage;
export import PrefixCreateParams = PrefixesAPI.PrefixCreateParams;
export import PrefixListParams = PrefixesAPI.PrefixListParams;
export import PrefixDeleteParams = PrefixesAPI.PrefixDeleteParams;
export import PrefixEditParams = PrefixesAPI.PrefixEditParams;
export import PrefixGetParams = PrefixesAPI.PrefixGetParams;
export import BGP = BGPAPI.BGP;
export import Delegations = DelegationsAPI.Delegations;
export import AddressingIpamDelegations = DelegationsAPI.AddressingIpamDelegations;
export import DelegationDeleteResponse = DelegationsAPI.DelegationDeleteResponse;
export import AddressingIpamDelegationsSinglePage = DelegationsAPI.AddressingIpamDelegationsSinglePage;
export import DelegationCreateParams = DelegationsAPI.DelegationCreateParams;
export import DelegationListParams = DelegationsAPI.DelegationListParams;
export import DelegationDeleteParams = DelegationsAPI.DelegationDeleteParams;
}
//# sourceMappingURL=prefixes.d.ts.map