import { IInferComposeReturn } from '../../../misc/functional/compose/types/infer-compose-return.type';
import { IComposeConstraint } from '../../../misc/functional/compose/types/compose-constraint.type';
import { IGenericObserverPipe } from '../../../observer/pipes/type/observer-pipe.type';
export declare type IComposeObserverPipesConstraint<// generics
GObservable extends IGenericObserverPipe, GFunctions extends readonly IGenericObserverPipe[]> = IComposeConstraint<GFunctions, GObservable, IGenericObserverPipe>;
export declare type IComposeObserverPipesReturn<// generics
GFunctions extends readonly IGenericObserverPipe[]> = IInferComposeReturn<GFunctions, IGenericObserverPipe>;
export declare function composeObserverPipes<// generics
GFunctions extends IComposeObserverPipesConstraint<any, GFunctions>>(fns: GFunctions): IComposeObserverPipesReturn<GFunctions>;
