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