import type { ModelAlgebraRefined } from '@morphic-ts/model-algebras/lib/refined'; import type { Predicate } from 'fp-ts/function'; import { Type } from 'io-ts'; import { IoTsURI } from '../hkt'; declare module '@morphic-ts/model-algebras/lib/refined' { /** * @since 0.0.1 */ interface RefinedConfig { [IoTsURI]: { type: Type; }; } /** * @since 0.0.1 */ interface PredicateConfig { [IoTsURI]: { type: Type; }; } } /** * @since 0.0.1 */ export declare const refinement: (T: Type, ref: (a: A) => a is B, name: string) => Type; /** * @since 0.0.1 */ export declare const predicate: (T: Type, predicate: Predicate, name: string) => Type; /** * @since 0.0.1 */ export declare const ioTsRefinedInterpreter: >>>() => ModelAlgebraRefined<"IoTsURI", Env>;