import { Eq } from './Eq'; import { Pprint } from './Pprint'; /** To test a type, you should be able to compare 2 values and print them out. */ export interface Testable extends Eq, Pprint { } export declare const testable: (eqA: Eq, pprintA: Pprint) => { pprint: (a: A) => import("./Pnode").Pnode; eq: (x: A, y: A) => boolean; }; export declare const tUndefined: { pprint: (a: undefined) => import("./Pnode").Pnode; eq: (x: undefined, y: undefined) => boolean; }; export declare const tNull: { pprint: (a: null) => import("./Pnode").Pnode; eq: (x: null, y: null) => boolean; }; export declare const tString: { pprint: (a: string) => import("./Pnode").Pnode; eq: (x: string, y: string) => boolean; }; export declare const tNumber: { pprint: (a: number) => import("./Pnode").Pnode; eq: (x: number, y: number) => boolean; }; export declare const tArray: (ta: Testable) => Testable>; export declare const tRecord: (ta: Testable) => Testable>; export declare const tAny: { pprint: (a: any) => import("./Pnode").Pnode; eq: (x: any, y: any) => boolean; }; export declare const tStrict: { pprint: (a: any) => import("./Pnode").Pnode; eq: (x: any, y: any) => boolean; };