import type { IListenerMetaData } from '../../../interface/discovery.js'; import type { Provider } from './Provider.js'; import type { RPCSender } from './RPCSender.js'; export declare abstract class ProviderStrategy { abstract init(provider: Provider): void; abstract selectListener(provider: Provider, list: IListenerMetaData[], senders: RPCSender[]): Promise; abstract selectSender(provider: Provider, senders: RPCSender[], toId?: string | null): Promise; abstract isBroadcastEnabled(provider: Provider): boolean; } //# sourceMappingURL=ProviderStrategy.d.ts.map