export interface IngressRule { readonly hostname?: string; readonly service: string; } export interface CloudflareApi { readonly getZone: (args: { readonly apiToken: string; readonly zone: string; }) => Promise<{ readonly id: string; readonly accountId: string; } | undefined>; readonly listZones: (args: { readonly apiToken: string; }) => Promise<{ readonly id: string; readonly name: string; readonly accountId: string; }[]>; readonly findTunnel: (args: { readonly accountId: string; readonly apiToken: string; readonly name: string; }) => Promise<{ readonly id: string; } | undefined>; readonly createTunnel: (args: { readonly accountId: string; readonly apiToken: string; readonly name: string; }) => Promise<{ readonly id: string; }>; readonly getTunnelToken: (args: { readonly accountId: string; readonly apiToken: string; readonly tunnelId: string; }) => Promise; readonly getTunnelStatus: (args: { readonly accountId: string; readonly apiToken: string; readonly tunnelId: string; }) => Promise; readonly getTunnelIngress: (args: { readonly accountId: string; readonly apiToken: string; readonly tunnelId: string; }) => Promise; readonly putTunnelIngress: (args: { readonly accountId: string; readonly apiToken: string; readonly tunnelId: string; readonly ingress: readonly IngressRule[]; }) => Promise; readonly findDnsRecord: (args: { readonly apiToken: string; readonly zoneId: string; readonly name: string; }) => Promise<{ readonly id: string; readonly content: string; } | undefined>; readonly listStampedDnsRecords: (args: { readonly apiToken: string; readonly zoneId: string; readonly commentPrefix: string; }) => Promise<{ readonly name: string; readonly comment: string; }[]>; readonly createDnsRecord: (args: { readonly apiToken: string; readonly zoneId: string; readonly name: string; readonly content: string; readonly comment: string; }) => Promise; readonly updateDnsRecord: (args: { readonly apiToken: string; readonly zoneId: string; readonly recordId: string; readonly name: string; readonly content: string; readonly comment: string; }) => Promise; readonly deleteTunnel: (args: { readonly accountId: string; readonly apiToken: string; readonly tunnelId: string; }) => Promise; readonly deleteDnsRecord: (args: { readonly apiToken: string; readonly zoneId: string; readonly recordId: string; }) => Promise; } export declare const cloudflareApi: CloudflareApi; //# sourceMappingURL=cloudflare-api.d.ts.map