import { DataWithRevision, RatelimitServicePlugin } from "../../../../plugins"; import { RatelimitRule, QuotaConfig } from "../../../.."; import { PolarisBaseAdapter, BaseAdapterOptions } from "./base"; import { ClientPoolOptions } from "../pool"; export interface RatelimitAdapterOptions extends BaseAdapterOptions { /** * 流量控制后端服务名 * __请勿随意修改此配置__ */ ratelimitService: string; } export declare abstract class PolarisRatelimitAdapter extends PolarisBaseAdapter implements RatelimitServicePlugin { protected readonly options: RatelimitAdapterOptions & ClientPoolOptions; private ratelimitRuleProcessor?; private ratelimitInfo?; ratelimitRules(namespace: string, service: string, revision?: string): Promise>; acquireQuota(namespace: string, service: string, rule: RatelimitRule, used: QuotaConfig[]): Promise; private procRatelimitRule; private amountToLimiter; }