1 | import { LoadBalancer, ChannelControlHelper, LoadBalancingConfig } from './load-balancer';
|
2 | import { SubchannelAddress } from './subchannel-address';
|
3 | export declare class ChildLoadBalancerHandler implements LoadBalancer {
|
4 | private readonly channelControlHelper;
|
5 | private currentChild;
|
6 | private pendingChild;
|
7 | private latestConfig;
|
8 | private ChildPolicyHelper;
|
9 | constructor(channelControlHelper: ChannelControlHelper);
|
10 | protected configUpdateRequiresNewPolicyInstance(oldConfig: LoadBalancingConfig, newConfig: LoadBalancingConfig): boolean;
|
11 | /**
|
12 | * Prerequisites: lbConfig !== null and lbConfig.name is registered
|
13 | * @param addressList
|
14 | * @param lbConfig
|
15 | * @param attributes
|
16 | */
|
17 | updateAddressList(addressList: SubchannelAddress[], lbConfig: LoadBalancingConfig, attributes: {
|
18 | [key: string]: unknown;
|
19 | }): void;
|
20 | exitIdle(): void;
|
21 | resetBackoff(): void;
|
22 | destroy(): void;
|
23 | getTypeName(): string;
|
24 | }
|