UNPKG

@type-r/models

Version:

The serializable type system for JS and TypeScript

18 lines (17 loc) 1.11 kB
import { Mixable as Class } from '@type-r/mixture'; import { CollectionConstructor } from './collection'; import { ChainableAttributeSpec, Model, ModelConstructor } from './model'; export { Linked } from '@linked/value'; export * from '@type-r/mixture'; export * from './collection'; export * from './io-tools'; export * from './model'; export * from './relations'; export * from './transactions'; export { Model as Record, Class }; export declare const on: any, off: any, trigger: any, once: any, listenTo: any, stopListening: any, listenToOnce: any; export declare function transaction<F extends Function>(method: F): F; export declare function type<T extends new (...args: any) => Model>(t: T[]): ChainableAttributeSpec<CollectionConstructor<InstanceType<T>>>; export declare function type<T extends object>(t: T[]): ChainableAttributeSpec<CollectionConstructor<InstanceType<ModelConstructor<T>>>>; export declare function type<T extends Function>(t: T | ChainableAttributeSpec<T>): ChainableAttributeSpec<T>; export declare function type<T extends object>(t: T): ChainableAttributeSpec<ModelConstructor<T>>;