import { HydrationState } from './hydration/hydrator.js'; export declare function createPipeline(skeletonFn: SkeletonFn, hydrationFn: HydrationFn, rulesFn: RulesFn, presentationFn: PresentationFn): (params: Params, ctx: Context) => Promise; export type SkeletonFn = (input: SkeletonFnInput) => Promise; export type SkeletonFnInput = { ctx: Context; params: Params; }; export type HydrationFn = (input: HydrationFnInput) => Promise; export type HydrationFnInput = { ctx: Context; params: Params; skeleton: Skeleton; }; export type RulesFn = (input: RulesFnInput) => Skeleton; export type RulesFnInput = { ctx: Context; params: Params; skeleton: Skeleton; hydration: HydrationState; }; export type PresentationFn = (input: PresentationFnInput) => View; export type PresentationFnInput = { ctx: Context; params: Params; skeleton: Skeleton; hydration: HydrationState; }; export declare function noRules(input: { skeleton: S; }): S; //# sourceMappingURL=pipeline.d.ts.map