import { Capi } from '@tencent-sdk/capi'; import { ClbRule, ClbListener, CreateRuleInput, CreateRuleOutput, BindClbTriggerInput, DeleteRuleInput, } from './interface'; import { ActionType } from './apis'; import { CapiCredentials, RegionType } from '../interface'; export default class Clb { listeners: ClbListener[] | null; credentials: CapiCredentials; capi: Capi; region: RegionType; constructor(credentials: CapiCredentials, region?: RegionType); getTaskStatus(taskId: string): Promise; loopForStatusReady(taskId: string): Promise; getListenerList(loadBalanceId: string): Promise; /** * * @param param0 * @returns ClbListener | undefined */ getListener({ loadBalanceId, protocol, port, }: { loadBalanceId: string; protocol: string; port: number; }): Promise; getRuleFromListener({ listener, domain, url, }: { listener: ClbListener; domain: string; url: string; }): ClbRule; getRule({ loadBalanceId, protocol, port, domain, url, }: { loadBalanceId: string; protocol: string; port: number; domain: string; url: string; }): Promise; createRule({ loadBalanceId, protocol, port, url, domain, }: CreateRuleInput): Promise; deleteRule({ loadBalanceId, listenerId, locationId, domain, url, }: DeleteRuleInput): Promise; /** * * @param {BindClbTriggerInput} 绑定 */ bindTrigger({ loadBalanceId, listenerId, locationId, functionName, namespace, qualifier, weight, }: BindClbTriggerInput): Promise; request({ Action, ...data }: { Action: ActionType; [key: string]: any }): Promise; }