Type alias: ExtendableModel<D, I>
ExtendableModel<
D,I>:object&Model<D,I>
Model class which can be configured or extended.
Type declaration
configure()
Parameters
• config: ModelConfig
• override?: boolean
Returns
ExtendableModel<D, ModelInstance<D>>
extend()
Type parameters
• ND extends object = object
Parameters
• rawDefinition?: ND & ThisType <ModelInstance<D & UnionToIntersection<object | { [K in (...)]: (...) }[keyof ...]> & OmitNever<{ [K in string | number | symbol]: (...)[(...)] extends ModelComposable<(...)> ? never : (...)[(...)] }>>>
Returns
ExtendableModel<D & UnionToIntersection<object | { [K in string | number | symbol]: ModelParsedDefinition<(...)>[K] extends ModelComposable<CD> ? ModelFlattenDefinition<CD> : never }[keyof ND]> & OmitNever<{ [K in string | number | symbol]: ModelParsedDefinition<ND>[K] extends ModelComposable<any> ? never : ModelParsedDefinition<ND>[K] }>, ModelInstance<D & UnionToIntersection<object | { [K in string | number | symbol]: (...)[(...)] extends ModelComposable<(...)> ? ModelFlattenDefinition<(...)> : never }[keyof ND]> & OmitNever<{ [K in string | number | symbol]: ModelParsedDefinition<ND>[K] extends ModelComposable<any> ? never : ModelParsedDefinition<ND>[K] }>>>
Type parameters
• D extends object = any
• I extends ModelInstance<D> = any