export type Predicate = (value: T) => boolean; export type Handler = (value: T) => R; export type Branch = [Predicate, Handler]; export declare const match: (...branches: Branch[]) => (value: T) => R; export declare const when: (predicate: Predicate, handler: Handler) => Branch; export declare const any: Predicate;