import { SelectorBase } from '../selector/selector_base'; import { Config, SendOption, SendSuccess, SendFail } from '@tencent/aegis-core'; export interface ProtocolOptions extends Pick { selector: SelectorBase; } export declare type ProtocalClassType = new (options: ProtocolOptions) => BaseProtocal; export declare abstract class BaseProtocal { protected selector: SelectorBase; protected protocol: Config['protocol']; constructor(options: ProtocolOptions); abstract send(options: SendOption, opt: { success?: SendSuccess; fail?: SendFail; bean?: string; }): void; }