/** * @since 0.9.4 */ import { HKT, Kind, Kind2, URIS, URIS2 } from 'fp-ts/HKT'; import { Refinement } from 'fp-ts/Refinement'; import { Branded, ValueOf } from './Branded'; /** * @since 0.9.4 */ export declare type Literal = string | number | boolean | null; /** * @since 0.9.4 */ export interface Schemable { readonly URI: S; readonly literal: ]>(...values: A) => HKT; readonly string: HKT; readonly number: HKT; readonly boolean: HKT; readonly date: HKT; readonly nullable: (or: HKT) => HKT; readonly struct: (properties: { [K in keyof A]: HKT; }) => HKT; readonly record: (codomain: HKT) => HKT>; readonly array: (item: HKT) => HKT>; readonly tuple: >(...components: { readonly [K in keyof A]: HKT; }) => HKT; readonly intersect: (right: HKT) => (left: HKT) => HKT; readonly sum: (tag: T) => (members: { [K in keyof A]: HKT>; }) => HKT; readonly lazy: (id: string, f: () => HKT) => HKT; readonly branded: >(item: HKT>) => HKT; readonly unknownArray: HKT>; readonly unknownRecord: HKT>; } /** * @since 0.9.4 */ export interface Schemable1 { readonly URI: S; readonly literal: ]>(...values: A) => Kind; readonly string: Kind; readonly number: Kind; readonly boolean: Kind; readonly date: Kind; readonly nullable: (or: Kind) => Kind; readonly struct: (properties: { [K in keyof A]: Kind; }) => Kind; readonly record: (codomain: Kind) => Kind>; readonly array: (item: Kind) => Kind>; readonly tuple: >(...components: { readonly [K in keyof A]: Kind; }) => Kind; readonly intersect: (right: Kind) => (left: Kind) => Kind; readonly sum: (tag: T) => (members: { [K in keyof A]: Kind>; }) => Kind; readonly lazy: (id: string, f: () => Kind) => Kind; readonly branded: >(item: Kind>) => Kind; readonly unknownArray: Kind>; readonly unknownRecord: Kind>; } /** * @since 0.9.4 */ export interface Schemable2C { readonly URI: S; readonly literal: ]>(...values: A) => Kind2; readonly string: Kind2; readonly number: Kind2; readonly boolean: Kind2; readonly date: Kind2; readonly nullable: (or: Kind2) => Kind2; readonly optional: (or: Kind2) => Kind2; readonly struct: (properties: { [K in keyof A]: Kind2; }) => Kind2; readonly record: (codomain: Kind2) => Kind2>; readonly array: (item: Kind2) => Kind2>; readonly tuple: (...components: { readonly [K in keyof A]: Kind2; }) => Kind2; readonly intersect: (right: Kind2) => (left: Kind2) => Kind2; readonly sum: (tag: T) => (members: { [K in keyof A]: Kind2>; }) => Kind2; readonly lazy: (id: string, f: () => Kind2) => Kind2; readonly branded: >(item: Kind2>) => Kind2; readonly unknownArray: Kind2>; readonly unknownRecord: Kind2>; } /** * @since 0.9.4 */ export interface WithUnion { readonly union: (second: HKT) => (first: HKT) => HKT; } /** * @since 0.9.4 */ export interface WithUnion1 { readonly union: (second: Kind) => (first: Kind) => Kind; } /** * @since 0.9.4 */ export interface WithUnion2C { readonly union: (second: Kind2) => (first: Kind2) => Kind2; } /** * @since 0.9.4 */ export interface WithRefine { readonly refine: (refinement: Refinement, id: string) => (from: HKT) => HKT; } /** * @since 0.9.4 */ export interface WithRefine1 { readonly refine: (refinement: Refinement, id: string) => (from: Kind) => Kind; } /** * @since 0.9.4 */ export interface WithRefine2C { readonly refine: (refinement: Refinement, id: string) => (from: Kind2) => Kind2; } /** * @since 0.9.4 */ export declare function memoize(f: (a: A) => B): (a: A) => B; //# sourceMappingURL=Schemable.d.ts.map