import { Scope } from "./abstractions"; import { UnaryTransformOp, UnaryTransformOpScoped } from "./transform"; export declare type TypeGuard = (value: A) => value is B; export declare type Predicate = (value: A) => boolean; export declare function filter(fn: TypeGuard): UnaryTransformOp; export declare function filter(fn: Predicate): UnaryTransformOp; export declare function filter(fn: TypeGuard, scope: Scope): UnaryTransformOpScoped; export declare function filter(fn: Predicate, scope: Scope): UnaryTransformOpScoped;