UNPKG

es-grid-template

Version:

es-grid-template

22 lines (21 loc) 710 B
type SameKeysWith<T> = T extends object ? { [key in keyof T]?: any; } : T; interface ObjectProto<T> { (v: SameKeysWith<T>): T; extends: (ext: SameKeysWith<T>) => ObjectProto<T>; } interface ArrayProto<T> { (items: SameKeysWith<T>[]): T[]; extends: (extRecord: SameKeysWith<T>) => ArrayProto<T>; } export interface ProtoStatic { string: (v: string) => string; number: (v: number) => number; notNull: <T = any>(v: any) => T; object: <O extends object = any>(base: SameKeysWith<O>) => ObjectProto<O>; array: <T extends object = any>(base: SameKeysWith<T>) => ArrayProto<T>; readonly empty: unique symbol; } declare const _default: ProtoStatic; export default _default;