import { Observable } from 'rxjs';
import { RxCustomStrategyCredentials, RxStrategyCredentials, RxStrategyNames } from './model';
export interface RxStrategyHandler {
    strategy$: Observable<RxStrategyCredentials>;
    next(name: RxStrategyNames | Observable<RxStrategyNames>): void;
}
/**
 * @internal
 *
 * A factory function returning an object to handle the process of turning strategy names into `RxStrategyCredentials`
 * You can next a strategy name as Observable or string and get an Observable of `RxStrategyCredentials`
 *
 * @param defaultStrategyName
 * @param strategies
 */
export declare function strategyHandling(defaultStrategyName: string, strategies: RxCustomStrategyCredentials<string>): RxStrategyHandler;
