1 | /**
|
2 | * @since 2.2.0
|
3 | */
|
4 | import { HKT, URIS, Kind } from 'fp-ts/es6/HKT';
|
5 | import { Schemable, Schemable1 } from './Schemable';
|
6 | /**
|
7 | * @since 2.2.0
|
8 | */
|
9 | export interface Schema<A> {
|
10 | <S>(S: Schemable<S>): HKT<S, A>;
|
11 | }
|
12 | /**
|
13 | * @since 2.2.0
|
14 | */
|
15 | export declare type TypeOf<S> = S extends Schema<infer A> ? A : never;
|
16 | /**
|
17 | * @since 2.2.0
|
18 | */
|
19 | export declare function make<A>(schema: Schema<A>): Schema<A>;
|
20 | /**
|
21 | * @since 2.2.3
|
22 | */
|
23 | export declare function interpreter<S extends URIS>(S: Schemable1<S>): <A>(schema: Schema<A>) => Kind<S, A>;
|