functional-models 2.1.4 → 2.1.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/properties.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { ModelReference, Maybe, PrimaryKeyType, Model, PropertyInstance, FunctionalValue, PropertyConfig, ValueGetter, MaybeFunction, Arrayable, PropertyValidator, ModelReferencePropertyInstance, FunctionalModel, JsonAble, PropertyModifier, TypedJsonObj } from './interfaces';
1
+ import { ModelReference, Maybe, PrimaryKeyType, Model, PropertyInstance, FunctionalValue, PropertyConfig, ValueGetter, MaybeFunction, Arrayable, PropertyValidator, ModelReferencePropertyInstance, FunctionalModel, JsonAble, PropertyModifier, TypedJsonObj, CalculateDenormalization } from './interfaces';
2
2
  declare const Property: <TValue extends Arrayable<FunctionalValue>, T extends FunctionalModel = FunctionalModel, TModel extends Readonly<{
3
3
  getName: () => string;
4
4
  getSingularName: () => string;
@@ -2036,261 +2036,1321 @@ declare const Property: <TValue extends Arrayable<FunctionalValue>, T extends Fu
2036
2036
  createGetter: (value: TValue, modelData: T, modelInstance: TModelInstance) => ValueGetter<TValue, T, TModel, TModelInstance>;
2037
2037
  getValidator: (valueGetter: ValueGetter<TValue, T, TModel, TModelInstance>) => PropertyValidator<T, TModel, TModelInstance>;
2038
2038
  }>;
2039
- declare const DateProperty: <TModifier extends PropertyModifier<string | Date>>(config?: PropertyConfig<TModifier>, additionalMetadata?: {}) => Readonly<{
2040
- getConfig: () => object;
2041
- getChoices: () => readonly (string | number | boolean | null)[];
2042
- getDefaultValue: () => TModifier;
2043
- getConstantValue: () => TModifier;
2044
- getPropertyType: () => string;
2045
- createGetter: (value: TModifier, modelData: FunctionalModel, modelInstance: Readonly<{
2046
- get: import("./interfaces").PropertyGetters<FunctionalModel> & {
2047
- id?: (() => import("./interfaces").MaybePromise<PrimaryKeyType>) | undefined;
2048
- };
2049
- references: Readonly<{
2050
- [s: string]: () => Maybe<PrimaryKeyType>;
2051
- }>;
2052
- toObj: import("./interfaces").toObj<FunctionalModel>;
2053
- getPrimaryKeyName: () => string;
2054
- getPrimaryKey: () => PrimaryKeyType;
2055
- validators: import("./interfaces").PropertyValidators<FunctionalModel, Readonly<{
2056
- getName: () => string;
2057
- getSingularName: () => string;
2058
- getDisplayName: () => string;
2059
- getPrimaryKeyName: () => string;
2060
- getModelDefinition: () => Readonly<{
2061
- getPrimaryKeyName?: (() => string) | undefined;
2062
- properties: any & {
2063
- readonly [x: string]: Readonly<{
2064
- getConfig: () => object;
2065
- getChoices: () => readonly (string | number | boolean | null)[];
2066
- getDefaultValue: () => any;
2067
- getConstantValue: () => any;
2068
- getPropertyType: () => string;
2069
- createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2070
- getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2071
- }>;
2072
- readonly id?: Readonly<{
2073
- getConfig: () => object;
2074
- getChoices: () => readonly (string | number | boolean | null)[];
2075
- getDefaultValue: () => any;
2076
- getConstantValue: () => any;
2077
- getPropertyType: () => string;
2078
- createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2079
- getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2080
- }> | undefined;
2081
- };
2082
- modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2083
- singularName?: string | undefined;
2084
- displayName?: string | undefined;
2085
- }>;
2086
- getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2087
- getOptions: () => object & Readonly<{
2088
- [s: string]: any;
2089
- instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
2090
- }>;
2091
- create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2092
- }>>;
2093
- validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<FunctionalModel>>;
2094
- getModel: () => Readonly<{
2095
- getName: () => string;
2096
- getSingularName: () => string;
2097
- getDisplayName: () => string;
2098
- getPrimaryKeyName: () => string;
2099
- getModelDefinition: () => Readonly<{
2100
- getPrimaryKeyName?: (() => string) | undefined;
2101
- properties: any & {
2102
- readonly [x: string]: Readonly<{
2103
- getConfig: () => object;
2104
- getChoices: () => readonly (string | number | boolean | null)[];
2105
- getDefaultValue: () => any;
2106
- getConstantValue: () => any;
2107
- getPropertyType: () => string;
2108
- createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2109
- getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2110
- }>;
2111
- readonly id?: Readonly<{
2112
- getConfig: () => object;
2113
- getChoices: () => readonly (string | number | boolean | null)[];
2114
- getDefaultValue: () => any;
2115
- getConstantValue: () => any;
2116
- getPropertyType: () => string;
2117
- createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2118
- getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2119
- }> | undefined;
2120
- };
2121
- modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2122
- singularName?: string | undefined;
2123
- displayName?: string | undefined;
2124
- }>;
2125
- getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2126
- getOptions: () => object & Readonly<{
2127
- [s: string]: any;
2128
- instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
2129
- }>;
2130
- create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2131
- }>;
2132
- }>) => ValueGetter<TModifier, FunctionalModel, Readonly<{
2133
- getName: () => string;
2134
- getSingularName: () => string;
2135
- getDisplayName: () => string;
2136
- getPrimaryKeyName: () => string;
2137
- getModelDefinition: () => Readonly<{
2138
- getPrimaryKeyName?: (() => string) | undefined;
2139
- properties: any & {
2140
- readonly [x: string]: Readonly<{
2141
- getConfig: () => object;
2142
- getChoices: () => readonly (string | number | boolean | null)[];
2143
- getDefaultValue: () => any;
2144
- getConstantValue: () => any;
2145
- getPropertyType: () => string;
2146
- createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2147
- getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2148
- }>;
2149
- readonly id?: Readonly<{
2150
- getConfig: () => object;
2151
- getChoices: () => readonly (string | number | boolean | null)[];
2152
- getDefaultValue: () => any;
2153
- getConstantValue: () => any;
2154
- getPropertyType: () => string;
2155
- createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2156
- getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2157
- }> | undefined;
2158
- };
2159
- modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2160
- singularName?: string | undefined;
2161
- displayName?: string | undefined;
2162
- }>;
2163
- getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2164
- getOptions: () => object & Readonly<{
2165
- [s: string]: any;
2166
- instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
2167
- }>;
2168
- create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2169
- }>, Readonly<{
2170
- get: import("./interfaces").PropertyGetters<FunctionalModel> & {
2171
- id?: (() => import("./interfaces").MaybePromise<PrimaryKeyType>) | undefined;
2172
- };
2173
- references: Readonly<{
2174
- [s: string]: () => Maybe<PrimaryKeyType>;
2175
- }>;
2176
- toObj: import("./interfaces").toObj<FunctionalModel>;
2177
- getPrimaryKeyName: () => string;
2178
- getPrimaryKey: () => PrimaryKeyType;
2179
- validators: import("./interfaces").PropertyValidators<FunctionalModel, Readonly<{
2180
- getName: () => string;
2181
- getSingularName: () => string;
2182
- getDisplayName: () => string;
2183
- getPrimaryKeyName: () => string;
2184
- getModelDefinition: () => Readonly<{
2185
- getPrimaryKeyName?: (() => string) | undefined;
2186
- properties: any & {
2187
- readonly [x: string]: Readonly<{
2188
- getConfig: () => object;
2189
- getChoices: () => readonly (string | number | boolean | null)[];
2190
- getDefaultValue: () => any;
2191
- getConstantValue: () => any;
2192
- getPropertyType: () => string;
2193
- createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2194
- getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2195
- }>;
2196
- readonly id?: Readonly<{
2197
- getConfig: () => object;
2198
- getChoices: () => readonly (string | number | boolean | null)[];
2199
- getDefaultValue: () => any;
2200
- getConstantValue: () => any;
2201
- getPropertyType: () => string;
2202
- createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2203
- getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2204
- }> | undefined;
2205
- };
2206
- modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2207
- singularName?: string | undefined;
2208
- displayName?: string | undefined;
2209
- }>;
2210
- getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2211
- getOptions: () => object & Readonly<{
2212
- [s: string]: any;
2213
- instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
2214
- }>;
2215
- create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2216
- }>>;
2217
- validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<FunctionalModel>>;
2218
- getModel: () => Readonly<{
2219
- getName: () => string;
2220
- getSingularName: () => string;
2221
- getDisplayName: () => string;
2222
- getPrimaryKeyName: () => string;
2223
- getModelDefinition: () => Readonly<{
2224
- getPrimaryKeyName?: (() => string) | undefined;
2225
- properties: any & {
2226
- readonly [x: string]: Readonly<{
2227
- getConfig: () => object;
2228
- getChoices: () => readonly (string | number | boolean | null)[];
2229
- getDefaultValue: () => any;
2230
- getConstantValue: () => any;
2231
- getPropertyType: () => string;
2232
- createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2233
- getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2234
- }>;
2235
- readonly id?: Readonly<{
2236
- getConfig: () => object;
2237
- getChoices: () => readonly (string | number | boolean | null)[];
2238
- getDefaultValue: () => any;
2239
- getConstantValue: () => any;
2240
- getPropertyType: () => string;
2241
- createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2242
- getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2243
- }> | undefined;
2244
- };
2245
- modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2246
- singularName?: string | undefined;
2247
- displayName?: string | undefined;
2248
- }>;
2249
- getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2250
- getOptions: () => object & Readonly<{
2251
- [s: string]: any;
2252
- instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
2253
- }>;
2254
- create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2255
- }>;
2256
- }>>;
2257
- getValidator: (valueGetter: ValueGetter<TModifier, FunctionalModel, Readonly<{
2039
+ /**
2040
+ * Config object for a date property
2041
+ */
2042
+ declare type DatePropertyConfig<T extends Arrayable<FunctionalValue>> = PropertyConfig<T> & {
2043
+ /**
2044
+ * A date-fns format.
2045
+ */
2046
+ format?: string;
2047
+ isDateOnly?: boolean;
2048
+ };
2049
+ /**
2050
+ * A Property for Dates. Both strings and Date objects.
2051
+ * @param config
2052
+ * @param additionalMetadata
2053
+ * @constructor
2054
+ */
2055
+ declare const DateProperty: <TModifier extends PropertyModifier<string | Date>>(config?: Readonly<{
2056
+ type?: string | undefined;
2057
+ defaultValue?: TModifier | undefined;
2058
+ isDenormalized?: boolean | undefined;
2059
+ value?: TModifier | undefined;
2060
+ choices?: readonly (string | number | boolean | null)[] | undefined;
2061
+ lazyLoadMethod?: (<TData extends FunctionalModel>(value: TModifier, modelData: TData) => import("./interfaces").MaybeLazy<TModifier>) | undefined;
2062
+ valueSelector?: ((instanceValue: import("./interfaces").MaybePromise<TModifier>) => TModifier) | undefined;
2063
+ validators?: readonly import("./interfaces").PropertyValidatorComponent<any, Readonly<{
2258
2064
  getName: () => string;
2259
2065
  getSingularName: () => string;
2260
2066
  getDisplayName: () => string;
2261
2067
  getPrimaryKeyName: () => string;
2262
2068
  getModelDefinition: () => Readonly<{
2263
2069
  getPrimaryKeyName?: (() => string) | undefined;
2264
- properties: any & {
2265
- readonly [x: string]: Readonly<{
2266
- getConfig: () => object;
2267
- getChoices: () => readonly (string | number | boolean | null)[];
2268
- getDefaultValue: () => any;
2269
- getConstantValue: () => any;
2270
- getPropertyType: () => string;
2271
- createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2272
- getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2273
- }>;
2274
- readonly id?: Readonly<{
2070
+ properties: {
2071
+ id?: (Readonly<{
2275
2072
  getConfig: () => object;
2276
2073
  getChoices: () => readonly (string | number | boolean | null)[];
2277
- getDefaultValue: () => any;
2278
- getConstantValue: () => any;
2074
+ getDefaultValue: () => string;
2075
+ getConstantValue: () => string;
2279
2076
  getPropertyType: () => string;
2280
- createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2281
- getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2282
- }> | undefined;
2283
- };
2284
- modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2285
- singularName?: string | undefined;
2286
- displayName?: string | undefined;
2287
- }>;
2288
- getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2289
- getOptions: () => object & Readonly<{
2290
- [s: string]: any;
2291
- instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
2292
- }>;
2293
- create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2077
+ createGetter: (value: string, modelData: FunctionalModel, modelInstance: Readonly<{
2078
+ get: import("./interfaces").PropertyGetters<FunctionalModel> & {
2079
+ id?: (() => import("./interfaces").MaybePromise<PrimaryKeyType>) | undefined;
2080
+ };
2081
+ references: Readonly<{
2082
+ [s: string]: () => Maybe<PrimaryKeyType>;
2083
+ }>;
2084
+ toObj: import("./interfaces").toObj<FunctionalModel>;
2085
+ getPrimaryKeyName: () => string;
2086
+ getPrimaryKey: () => PrimaryKeyType;
2087
+ validators: import("./interfaces").PropertyValidators<FunctionalModel, Readonly<{
2088
+ getName: () => string;
2089
+ getSingularName: () => string;
2090
+ getDisplayName: () => string;
2091
+ getPrimaryKeyName: () => string;
2092
+ getModelDefinition: () => Readonly<{
2093
+ getPrimaryKeyName?: (() => string) | undefined;
2094
+ properties: any & {
2095
+ readonly [x: string]: Readonly<{
2096
+ getConfig: () => object;
2097
+ getChoices: () => readonly (string | number | boolean | null)[];
2098
+ getDefaultValue: () => any;
2099
+ getConstantValue: () => any;
2100
+ getPropertyType: () => string;
2101
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2102
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2103
+ }>;
2104
+ readonly id?: Readonly<{
2105
+ getConfig: () => object;
2106
+ getChoices: () => readonly (string | number | boolean | null)[];
2107
+ getDefaultValue: () => any;
2108
+ getConstantValue: () => any;
2109
+ getPropertyType: () => string;
2110
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2111
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2112
+ }> | undefined;
2113
+ };
2114
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2115
+ singularName?: string | undefined;
2116
+ displayName?: string | undefined;
2117
+ }>;
2118
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2119
+ getOptions: () => object & Readonly<{
2120
+ [s: string]: any;
2121
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
2122
+ }>;
2123
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2124
+ }>>;
2125
+ validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<FunctionalModel>>;
2126
+ getModel: () => Readonly<{
2127
+ getName: () => string;
2128
+ getSingularName: () => string;
2129
+ getDisplayName: () => string;
2130
+ getPrimaryKeyName: () => string;
2131
+ getModelDefinition: () => Readonly<{
2132
+ getPrimaryKeyName?: (() => string) | undefined;
2133
+ properties: any & {
2134
+ readonly [x: string]: Readonly<{
2135
+ getConfig: () => object;
2136
+ getChoices: () => readonly (string | number | boolean | null)[];
2137
+ getDefaultValue: () => any;
2138
+ getConstantValue: () => any;
2139
+ getPropertyType: () => string;
2140
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2141
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2142
+ }>;
2143
+ readonly id?: Readonly<{
2144
+ getConfig: () => object;
2145
+ getChoices: () => readonly (string | number | boolean | null)[];
2146
+ getDefaultValue: () => any;
2147
+ getConstantValue: () => any;
2148
+ getPropertyType: () => string;
2149
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2150
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2151
+ }> | undefined;
2152
+ };
2153
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2154
+ singularName?: string | undefined;
2155
+ displayName?: string | undefined;
2156
+ }>;
2157
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2158
+ getOptions: () => object & Readonly<{
2159
+ [s: string]: any;
2160
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
2161
+ }>;
2162
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2163
+ }>;
2164
+ }>) => ValueGetter<string, FunctionalModel, Readonly<{
2165
+ getName: () => string;
2166
+ getSingularName: () => string;
2167
+ getDisplayName: () => string;
2168
+ getPrimaryKeyName: () => string;
2169
+ getModelDefinition: () => Readonly<{
2170
+ getPrimaryKeyName?: (() => string) | undefined;
2171
+ properties: any & {
2172
+ readonly [x: string]: Readonly<{
2173
+ getConfig: () => object;
2174
+ getChoices: () => readonly (string | number | boolean | null)[];
2175
+ getDefaultValue: () => any;
2176
+ getConstantValue: () => any;
2177
+ getPropertyType: () => string;
2178
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2179
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2180
+ }>;
2181
+ readonly id?: Readonly<{
2182
+ getConfig: () => object;
2183
+ getChoices: () => readonly (string | number | boolean | null)[];
2184
+ getDefaultValue: () => any;
2185
+ getConstantValue: () => any;
2186
+ getPropertyType: () => string;
2187
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2188
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2189
+ }> | undefined;
2190
+ };
2191
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2192
+ singularName?: string | undefined;
2193
+ displayName?: string | undefined;
2194
+ }>;
2195
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2196
+ getOptions: () => object & Readonly<{
2197
+ [s: string]: any;
2198
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
2199
+ }>;
2200
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2201
+ }>, Readonly<{
2202
+ get: import("./interfaces").PropertyGetters<FunctionalModel> & {
2203
+ id?: (() => import("./interfaces").MaybePromise<PrimaryKeyType>) | undefined;
2204
+ };
2205
+ references: Readonly<{
2206
+ [s: string]: () => Maybe<PrimaryKeyType>;
2207
+ }>;
2208
+ toObj: import("./interfaces").toObj<FunctionalModel>;
2209
+ getPrimaryKeyName: () => string;
2210
+ getPrimaryKey: () => PrimaryKeyType;
2211
+ validators: import("./interfaces").PropertyValidators<FunctionalModel, Readonly<{
2212
+ getName: () => string;
2213
+ getSingularName: () => string;
2214
+ getDisplayName: () => string;
2215
+ getPrimaryKeyName: () => string;
2216
+ getModelDefinition: () => Readonly<{
2217
+ getPrimaryKeyName?: (() => string) | undefined;
2218
+ properties: any & {
2219
+ readonly [x: string]: Readonly<{
2220
+ getConfig: () => object;
2221
+ getChoices: () => readonly (string | number | boolean | null)[];
2222
+ getDefaultValue: () => any;
2223
+ getConstantValue: () => any;
2224
+ getPropertyType: () => string;
2225
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2226
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2227
+ }>;
2228
+ readonly id?: Readonly<{
2229
+ getConfig: () => object;
2230
+ getChoices: () => readonly (string | number | boolean | null)[];
2231
+ getDefaultValue: () => any;
2232
+ getConstantValue: () => any;
2233
+ getPropertyType: () => string;
2234
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2235
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2236
+ }> | undefined;
2237
+ };
2238
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2239
+ singularName?: string | undefined;
2240
+ displayName?: string | undefined;
2241
+ }>;
2242
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2243
+ getOptions: () => object & Readonly<{
2244
+ [s: string]: any;
2245
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
2246
+ }>;
2247
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2248
+ }>>;
2249
+ validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<FunctionalModel>>;
2250
+ getModel: () => Readonly<{
2251
+ getName: () => string;
2252
+ getSingularName: () => string;
2253
+ getDisplayName: () => string;
2254
+ getPrimaryKeyName: () => string;
2255
+ getModelDefinition: () => Readonly<{
2256
+ getPrimaryKeyName?: (() => string) | undefined;
2257
+ properties: any & {
2258
+ readonly [x: string]: Readonly<{
2259
+ getConfig: () => object;
2260
+ getChoices: () => readonly (string | number | boolean | null)[];
2261
+ getDefaultValue: () => any;
2262
+ getConstantValue: () => any;
2263
+ getPropertyType: () => string;
2264
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2265
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2266
+ }>;
2267
+ readonly id?: Readonly<{
2268
+ getConfig: () => object;
2269
+ getChoices: () => readonly (string | number | boolean | null)[];
2270
+ getDefaultValue: () => any;
2271
+ getConstantValue: () => any;
2272
+ getPropertyType: () => string;
2273
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2274
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2275
+ }> | undefined;
2276
+ };
2277
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2278
+ singularName?: string | undefined;
2279
+ displayName?: string | undefined;
2280
+ }>;
2281
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2282
+ getOptions: () => object & Readonly<{
2283
+ [s: string]: any;
2284
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
2285
+ }>;
2286
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2287
+ }>;
2288
+ }>>;
2289
+ getValidator: (valueGetter: ValueGetter<string, FunctionalModel, Readonly<{
2290
+ getName: () => string;
2291
+ getSingularName: () => string;
2292
+ getDisplayName: () => string;
2293
+ getPrimaryKeyName: () => string;
2294
+ getModelDefinition: () => Readonly<{
2295
+ getPrimaryKeyName?: (() => string) | undefined;
2296
+ properties: any & {
2297
+ readonly [x: string]: Readonly<{
2298
+ getConfig: () => object;
2299
+ getChoices: () => readonly (string | number | boolean | null)[];
2300
+ getDefaultValue: () => any;
2301
+ getConstantValue: () => any;
2302
+ getPropertyType: () => string;
2303
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2304
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2305
+ }>;
2306
+ readonly id?: Readonly<{
2307
+ getConfig: () => object;
2308
+ getChoices: () => readonly (string | number | boolean | null)[];
2309
+ getDefaultValue: () => any;
2310
+ getConstantValue: () => any;
2311
+ getPropertyType: () => string;
2312
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2313
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2314
+ }> | undefined;
2315
+ };
2316
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2317
+ singularName?: string | undefined;
2318
+ displayName?: string | undefined;
2319
+ }>;
2320
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2321
+ getOptions: () => object & Readonly<{
2322
+ [s: string]: any;
2323
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
2324
+ }>;
2325
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2326
+ }>, Readonly<{
2327
+ get: import("./interfaces").PropertyGetters<FunctionalModel> & {
2328
+ id?: (() => import("./interfaces").MaybePromise<PrimaryKeyType>) | undefined;
2329
+ };
2330
+ references: Readonly<{
2331
+ [s: string]: () => Maybe<PrimaryKeyType>;
2332
+ }>;
2333
+ toObj: import("./interfaces").toObj<FunctionalModel>;
2334
+ getPrimaryKeyName: () => string;
2335
+ getPrimaryKey: () => PrimaryKeyType;
2336
+ validators: import("./interfaces").PropertyValidators<FunctionalModel, Readonly<{
2337
+ getName: () => string;
2338
+ getSingularName: () => string;
2339
+ getDisplayName: () => string;
2340
+ getPrimaryKeyName: () => string;
2341
+ getModelDefinition: () => Readonly<{
2342
+ getPrimaryKeyName?: (() => string) | undefined;
2343
+ properties: any & {
2344
+ readonly [x: string]: Readonly<{
2345
+ getConfig: () => object;
2346
+ getChoices: () => readonly (string | number | boolean | null)[];
2347
+ getDefaultValue: () => any;
2348
+ getConstantValue: () => any;
2349
+ getPropertyType: () => string;
2350
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2351
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2352
+ }>;
2353
+ readonly id?: Readonly<{
2354
+ getConfig: () => object;
2355
+ getChoices: () => readonly (string | number | boolean | null)[];
2356
+ getDefaultValue: () => any;
2357
+ getConstantValue: () => any;
2358
+ getPropertyType: () => string;
2359
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2360
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2361
+ }> | undefined;
2362
+ };
2363
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2364
+ singularName?: string | undefined;
2365
+ displayName?: string | undefined;
2366
+ }>;
2367
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2368
+ getOptions: () => object & Readonly<{
2369
+ [s: string]: any;
2370
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
2371
+ }>;
2372
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2373
+ }>>;
2374
+ validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<FunctionalModel>>;
2375
+ getModel: () => Readonly<{
2376
+ getName: () => string;
2377
+ getSingularName: () => string;
2378
+ getDisplayName: () => string;
2379
+ getPrimaryKeyName: () => string;
2380
+ getModelDefinition: () => Readonly<{
2381
+ getPrimaryKeyName?: (() => string) | undefined;
2382
+ properties: any & {
2383
+ readonly [x: string]: Readonly<{
2384
+ getConfig: () => object;
2385
+ getChoices: () => readonly (string | number | boolean | null)[];
2386
+ getDefaultValue: () => any;
2387
+ getConstantValue: () => any;
2388
+ getPropertyType: () => string;
2389
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2390
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2391
+ }>;
2392
+ readonly id?: Readonly<{
2393
+ getConfig: () => object;
2394
+ getChoices: () => readonly (string | number | boolean | null)[];
2395
+ getDefaultValue: () => any;
2396
+ getConstantValue: () => any;
2397
+ getPropertyType: () => string;
2398
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2399
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2400
+ }> | undefined;
2401
+ };
2402
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2403
+ singularName?: string | undefined;
2404
+ displayName?: string | undefined;
2405
+ }>;
2406
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2407
+ getOptions: () => object & Readonly<{
2408
+ [s: string]: any;
2409
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
2410
+ }>;
2411
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2412
+ }>;
2413
+ }>>) => PropertyValidator<FunctionalModel, Readonly<{
2414
+ getName: () => string;
2415
+ getSingularName: () => string;
2416
+ getDisplayName: () => string;
2417
+ getPrimaryKeyName: () => string;
2418
+ getModelDefinition: () => Readonly<{
2419
+ getPrimaryKeyName?: (() => string) | undefined;
2420
+ properties: any & {
2421
+ readonly [x: string]: Readonly<{
2422
+ getConfig: () => object;
2423
+ getChoices: () => readonly (string | number | boolean | null)[];
2424
+ getDefaultValue: () => any;
2425
+ getConstantValue: () => any;
2426
+ getPropertyType: () => string;
2427
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2428
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2429
+ }>;
2430
+ readonly id?: Readonly<{
2431
+ getConfig: () => object;
2432
+ getChoices: () => readonly (string | number | boolean | null)[];
2433
+ getDefaultValue: () => any;
2434
+ getConstantValue: () => any;
2435
+ getPropertyType: () => string;
2436
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2437
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2438
+ }> | undefined;
2439
+ };
2440
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2441
+ singularName?: string | undefined;
2442
+ displayName?: string | undefined;
2443
+ }>;
2444
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2445
+ getOptions: () => object & Readonly<{
2446
+ [s: string]: any;
2447
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
2448
+ }>;
2449
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2450
+ }>, Readonly<{
2451
+ get: import("./interfaces").PropertyGetters<FunctionalModel> & {
2452
+ id?: (() => import("./interfaces").MaybePromise<PrimaryKeyType>) | undefined;
2453
+ };
2454
+ references: Readonly<{
2455
+ [s: string]: () => Maybe<PrimaryKeyType>;
2456
+ }>;
2457
+ toObj: import("./interfaces").toObj<FunctionalModel>;
2458
+ getPrimaryKeyName: () => string;
2459
+ getPrimaryKey: () => PrimaryKeyType;
2460
+ validators: import("./interfaces").PropertyValidators<FunctionalModel, Readonly<{
2461
+ getName: () => string;
2462
+ getSingularName: () => string;
2463
+ getDisplayName: () => string;
2464
+ getPrimaryKeyName: () => string;
2465
+ getModelDefinition: () => Readonly<{
2466
+ getPrimaryKeyName?: (() => string) | undefined;
2467
+ properties: any & {
2468
+ readonly [x: string]: Readonly<{
2469
+ getConfig: () => object;
2470
+ getChoices: () => readonly (string | number | boolean | null)[];
2471
+ getDefaultValue: () => any;
2472
+ getConstantValue: () => any;
2473
+ getPropertyType: () => string;
2474
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2475
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2476
+ }>;
2477
+ readonly id?: Readonly<{
2478
+ getConfig: () => object;
2479
+ getChoices: () => readonly (string | number | boolean | null)[];
2480
+ getDefaultValue: () => any;
2481
+ getConstantValue: () => any;
2482
+ getPropertyType: () => string;
2483
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2484
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2485
+ }> | undefined;
2486
+ };
2487
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2488
+ singularName?: string | undefined;
2489
+ displayName?: string | undefined;
2490
+ }>;
2491
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2492
+ getOptions: () => object & Readonly<{
2493
+ [s: string]: any;
2494
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
2495
+ }>;
2496
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2497
+ }>>;
2498
+ validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<FunctionalModel>>;
2499
+ getModel: () => Readonly<{
2500
+ getName: () => string;
2501
+ getSingularName: () => string;
2502
+ getDisplayName: () => string;
2503
+ getPrimaryKeyName: () => string;
2504
+ getModelDefinition: () => Readonly<{
2505
+ getPrimaryKeyName?: (() => string) | undefined;
2506
+ properties: any & {
2507
+ readonly [x: string]: Readonly<{
2508
+ getConfig: () => object;
2509
+ getChoices: () => readonly (string | number | boolean | null)[];
2510
+ getDefaultValue: () => any;
2511
+ getConstantValue: () => any;
2512
+ getPropertyType: () => string;
2513
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2514
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2515
+ }>;
2516
+ readonly id?: Readonly<{
2517
+ getConfig: () => object;
2518
+ getChoices: () => readonly (string | number | boolean | null)[];
2519
+ getDefaultValue: () => any;
2520
+ getConstantValue: () => any;
2521
+ getPropertyType: () => string;
2522
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2523
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2524
+ }> | undefined;
2525
+ };
2526
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2527
+ singularName?: string | undefined;
2528
+ displayName?: string | undefined;
2529
+ }>;
2530
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2531
+ getOptions: () => object & Readonly<{
2532
+ [s: string]: any;
2533
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
2534
+ }>;
2535
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2536
+ }>;
2537
+ }>>;
2538
+ }> | Readonly<{
2539
+ getConfig: () => object;
2540
+ getChoices: () => readonly (string | number | boolean | null)[];
2541
+ getDefaultValue: () => number;
2542
+ getConstantValue: () => number;
2543
+ getPropertyType: () => string;
2544
+ createGetter: (value: number, modelData: FunctionalModel, modelInstance: Readonly<{
2545
+ get: import("./interfaces").PropertyGetters<FunctionalModel> & {
2546
+ id?: (() => import("./interfaces").MaybePromise<PrimaryKeyType>) | undefined;
2547
+ };
2548
+ references: Readonly<{
2549
+ [s: string]: () => Maybe<PrimaryKeyType>;
2550
+ }>;
2551
+ toObj: import("./interfaces").toObj<FunctionalModel>;
2552
+ getPrimaryKeyName: () => string;
2553
+ getPrimaryKey: () => PrimaryKeyType;
2554
+ validators: import("./interfaces").PropertyValidators<FunctionalModel, Readonly<{
2555
+ getName: () => string;
2556
+ getSingularName: () => string;
2557
+ getDisplayName: () => string;
2558
+ getPrimaryKeyName: () => string;
2559
+ getModelDefinition: () => Readonly<{
2560
+ getPrimaryKeyName?: (() => string) | undefined;
2561
+ properties: any & {
2562
+ readonly [x: string]: Readonly<{
2563
+ getConfig: () => object;
2564
+ getChoices: () => readonly (string | number | boolean | null)[];
2565
+ getDefaultValue: () => any;
2566
+ getConstantValue: () => any;
2567
+ getPropertyType: () => string;
2568
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2569
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2570
+ }>;
2571
+ readonly id?: Readonly<{
2572
+ getConfig: () => object;
2573
+ getChoices: () => readonly (string | number | boolean | null)[];
2574
+ getDefaultValue: () => any;
2575
+ getConstantValue: () => any;
2576
+ getPropertyType: () => string;
2577
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2578
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2579
+ }> | undefined;
2580
+ };
2581
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2582
+ singularName?: string | undefined;
2583
+ displayName?: string | undefined;
2584
+ }>;
2585
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2586
+ getOptions: () => object & Readonly<{
2587
+ [s: string]: any;
2588
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
2589
+ }>;
2590
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2591
+ }>>;
2592
+ validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<FunctionalModel>>;
2593
+ getModel: () => Readonly<{
2594
+ getName: () => string;
2595
+ getSingularName: () => string;
2596
+ getDisplayName: () => string;
2597
+ getPrimaryKeyName: () => string;
2598
+ getModelDefinition: () => Readonly<{
2599
+ getPrimaryKeyName?: (() => string) | undefined;
2600
+ properties: any & {
2601
+ readonly [x: string]: Readonly<{
2602
+ getConfig: () => object;
2603
+ getChoices: () => readonly (string | number | boolean | null)[];
2604
+ getDefaultValue: () => any;
2605
+ getConstantValue: () => any;
2606
+ getPropertyType: () => string;
2607
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2608
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2609
+ }>;
2610
+ readonly id?: Readonly<{
2611
+ getConfig: () => object;
2612
+ getChoices: () => readonly (string | number | boolean | null)[];
2613
+ getDefaultValue: () => any;
2614
+ getConstantValue: () => any;
2615
+ getPropertyType: () => string;
2616
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2617
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2618
+ }> | undefined;
2619
+ };
2620
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2621
+ singularName?: string | undefined;
2622
+ displayName?: string | undefined;
2623
+ }>;
2624
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2625
+ getOptions: () => object & Readonly<{
2626
+ [s: string]: any;
2627
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
2628
+ }>;
2629
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2630
+ }>;
2631
+ }>) => ValueGetter<number, FunctionalModel, Readonly<{
2632
+ getName: () => string;
2633
+ getSingularName: () => string;
2634
+ getDisplayName: () => string;
2635
+ getPrimaryKeyName: () => string;
2636
+ getModelDefinition: () => Readonly<{
2637
+ getPrimaryKeyName?: (() => string) | undefined;
2638
+ properties: any & {
2639
+ readonly [x: string]: Readonly<{
2640
+ getConfig: () => object;
2641
+ getChoices: () => readonly (string | number | boolean | null)[];
2642
+ getDefaultValue: () => any;
2643
+ getConstantValue: () => any;
2644
+ getPropertyType: () => string;
2645
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2646
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2647
+ }>;
2648
+ readonly id?: Readonly<{
2649
+ getConfig: () => object;
2650
+ getChoices: () => readonly (string | number | boolean | null)[];
2651
+ getDefaultValue: () => any;
2652
+ getConstantValue: () => any;
2653
+ getPropertyType: () => string;
2654
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2655
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2656
+ }> | undefined;
2657
+ };
2658
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2659
+ singularName?: string | undefined;
2660
+ displayName?: string | undefined;
2661
+ }>;
2662
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2663
+ getOptions: () => object & Readonly<{
2664
+ [s: string]: any;
2665
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
2666
+ }>;
2667
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2668
+ }>, Readonly<{
2669
+ get: import("./interfaces").PropertyGetters<FunctionalModel> & {
2670
+ id?: (() => import("./interfaces").MaybePromise<PrimaryKeyType>) | undefined;
2671
+ };
2672
+ references: Readonly<{
2673
+ [s: string]: () => Maybe<PrimaryKeyType>;
2674
+ }>;
2675
+ toObj: import("./interfaces").toObj<FunctionalModel>;
2676
+ getPrimaryKeyName: () => string;
2677
+ getPrimaryKey: () => PrimaryKeyType;
2678
+ validators: import("./interfaces").PropertyValidators<FunctionalModel, Readonly<{
2679
+ getName: () => string;
2680
+ getSingularName: () => string;
2681
+ getDisplayName: () => string;
2682
+ getPrimaryKeyName: () => string;
2683
+ getModelDefinition: () => Readonly<{
2684
+ getPrimaryKeyName?: (() => string) | undefined;
2685
+ properties: any & {
2686
+ readonly [x: string]: Readonly<{
2687
+ getConfig: () => object;
2688
+ getChoices: () => readonly (string | number | boolean | null)[];
2689
+ getDefaultValue: () => any;
2690
+ getConstantValue: () => any;
2691
+ getPropertyType: () => string;
2692
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2693
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2694
+ }>;
2695
+ readonly id?: Readonly<{
2696
+ getConfig: () => object;
2697
+ getChoices: () => readonly (string | number | boolean | null)[];
2698
+ getDefaultValue: () => any;
2699
+ getConstantValue: () => any;
2700
+ getPropertyType: () => string;
2701
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2702
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2703
+ }> | undefined;
2704
+ };
2705
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2706
+ singularName?: string | undefined;
2707
+ displayName?: string | undefined;
2708
+ }>;
2709
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2710
+ getOptions: () => object & Readonly<{
2711
+ [s: string]: any;
2712
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
2713
+ }>;
2714
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2715
+ }>>;
2716
+ validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<FunctionalModel>>;
2717
+ getModel: () => Readonly<{
2718
+ getName: () => string;
2719
+ getSingularName: () => string;
2720
+ getDisplayName: () => string;
2721
+ getPrimaryKeyName: () => string;
2722
+ getModelDefinition: () => Readonly<{
2723
+ getPrimaryKeyName?: (() => string) | undefined;
2724
+ properties: any & {
2725
+ readonly [x: string]: Readonly<{
2726
+ getConfig: () => object;
2727
+ getChoices: () => readonly (string | number | boolean | null)[];
2728
+ getDefaultValue: () => any;
2729
+ getConstantValue: () => any;
2730
+ getPropertyType: () => string;
2731
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2732
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2733
+ }>;
2734
+ readonly id?: Readonly<{
2735
+ getConfig: () => object;
2736
+ getChoices: () => readonly (string | number | boolean | null)[];
2737
+ getDefaultValue: () => any;
2738
+ getConstantValue: () => any;
2739
+ getPropertyType: () => string;
2740
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2741
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2742
+ }> | undefined;
2743
+ };
2744
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2745
+ singularName?: string | undefined;
2746
+ displayName?: string | undefined;
2747
+ }>;
2748
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2749
+ getOptions: () => object & Readonly<{
2750
+ [s: string]: any;
2751
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
2752
+ }>;
2753
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2754
+ }>;
2755
+ }>>;
2756
+ getValidator: (valueGetter: ValueGetter<number, FunctionalModel, Readonly<{
2757
+ getName: () => string;
2758
+ getSingularName: () => string;
2759
+ getDisplayName: () => string;
2760
+ getPrimaryKeyName: () => string;
2761
+ getModelDefinition: () => Readonly<{
2762
+ getPrimaryKeyName?: (() => string) | undefined;
2763
+ properties: any & {
2764
+ readonly [x: string]: Readonly<{
2765
+ getConfig: () => object;
2766
+ getChoices: () => readonly (string | number | boolean | null)[];
2767
+ getDefaultValue: () => any;
2768
+ getConstantValue: () => any;
2769
+ getPropertyType: () => string;
2770
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2771
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2772
+ }>;
2773
+ readonly id?: Readonly<{
2774
+ getConfig: () => object;
2775
+ getChoices: () => readonly (string | number | boolean | null)[];
2776
+ getDefaultValue: () => any;
2777
+ getConstantValue: () => any;
2778
+ getPropertyType: () => string;
2779
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2780
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2781
+ }> | undefined;
2782
+ };
2783
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2784
+ singularName?: string | undefined;
2785
+ displayName?: string | undefined;
2786
+ }>;
2787
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2788
+ getOptions: () => object & Readonly<{
2789
+ [s: string]: any;
2790
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
2791
+ }>;
2792
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2793
+ }>, Readonly<{
2794
+ get: import("./interfaces").PropertyGetters<FunctionalModel> & {
2795
+ id?: (() => import("./interfaces").MaybePromise<PrimaryKeyType>) | undefined;
2796
+ };
2797
+ references: Readonly<{
2798
+ [s: string]: () => Maybe<PrimaryKeyType>;
2799
+ }>;
2800
+ toObj: import("./interfaces").toObj<FunctionalModel>;
2801
+ getPrimaryKeyName: () => string;
2802
+ getPrimaryKey: () => PrimaryKeyType;
2803
+ validators: import("./interfaces").PropertyValidators<FunctionalModel, Readonly<{
2804
+ getName: () => string;
2805
+ getSingularName: () => string;
2806
+ getDisplayName: () => string;
2807
+ getPrimaryKeyName: () => string;
2808
+ getModelDefinition: () => Readonly<{
2809
+ getPrimaryKeyName?: (() => string) | undefined;
2810
+ properties: any & {
2811
+ readonly [x: string]: Readonly<{
2812
+ getConfig: () => object;
2813
+ getChoices: () => readonly (string | number | boolean | null)[];
2814
+ getDefaultValue: () => any;
2815
+ getConstantValue: () => any;
2816
+ getPropertyType: () => string;
2817
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2818
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2819
+ }>;
2820
+ readonly id?: Readonly<{
2821
+ getConfig: () => object;
2822
+ getChoices: () => readonly (string | number | boolean | null)[];
2823
+ getDefaultValue: () => any;
2824
+ getConstantValue: () => any;
2825
+ getPropertyType: () => string;
2826
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2827
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2828
+ }> | undefined;
2829
+ };
2830
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2831
+ singularName?: string | undefined;
2832
+ displayName?: string | undefined;
2833
+ }>;
2834
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2835
+ getOptions: () => object & Readonly<{
2836
+ [s: string]: any;
2837
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
2838
+ }>;
2839
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2840
+ }>>;
2841
+ validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<FunctionalModel>>;
2842
+ getModel: () => Readonly<{
2843
+ getName: () => string;
2844
+ getSingularName: () => string;
2845
+ getDisplayName: () => string;
2846
+ getPrimaryKeyName: () => string;
2847
+ getModelDefinition: () => Readonly<{
2848
+ getPrimaryKeyName?: (() => string) | undefined;
2849
+ properties: any & {
2850
+ readonly [x: string]: Readonly<{
2851
+ getConfig: () => object;
2852
+ getChoices: () => readonly (string | number | boolean | null)[];
2853
+ getDefaultValue: () => any;
2854
+ getConstantValue: () => any;
2855
+ getPropertyType: () => string;
2856
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2857
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2858
+ }>;
2859
+ readonly id?: Readonly<{
2860
+ getConfig: () => object;
2861
+ getChoices: () => readonly (string | number | boolean | null)[];
2862
+ getDefaultValue: () => any;
2863
+ getConstantValue: () => any;
2864
+ getPropertyType: () => string;
2865
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2866
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2867
+ }> | undefined;
2868
+ };
2869
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2870
+ singularName?: string | undefined;
2871
+ displayName?: string | undefined;
2872
+ }>;
2873
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2874
+ getOptions: () => object & Readonly<{
2875
+ [s: string]: any;
2876
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
2877
+ }>;
2878
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2879
+ }>;
2880
+ }>>) => PropertyValidator<FunctionalModel, Readonly<{
2881
+ getName: () => string;
2882
+ getSingularName: () => string;
2883
+ getDisplayName: () => string;
2884
+ getPrimaryKeyName: () => string;
2885
+ getModelDefinition: () => Readonly<{
2886
+ getPrimaryKeyName?: (() => string) | undefined;
2887
+ properties: any & {
2888
+ readonly [x: string]: Readonly<{
2889
+ getConfig: () => object;
2890
+ getChoices: () => readonly (string | number | boolean | null)[];
2891
+ getDefaultValue: () => any;
2892
+ getConstantValue: () => any;
2893
+ getPropertyType: () => string;
2894
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2895
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2896
+ }>;
2897
+ readonly id?: Readonly<{
2898
+ getConfig: () => object;
2899
+ getChoices: () => readonly (string | number | boolean | null)[];
2900
+ getDefaultValue: () => any;
2901
+ getConstantValue: () => any;
2902
+ getPropertyType: () => string;
2903
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2904
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2905
+ }> | undefined;
2906
+ };
2907
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2908
+ singularName?: string | undefined;
2909
+ displayName?: string | undefined;
2910
+ }>;
2911
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2912
+ getOptions: () => object & Readonly<{
2913
+ [s: string]: any;
2914
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
2915
+ }>;
2916
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2917
+ }>, Readonly<{
2918
+ get: import("./interfaces").PropertyGetters<FunctionalModel> & {
2919
+ id?: (() => import("./interfaces").MaybePromise<PrimaryKeyType>) | undefined;
2920
+ };
2921
+ references: Readonly<{
2922
+ [s: string]: () => Maybe<PrimaryKeyType>;
2923
+ }>;
2924
+ toObj: import("./interfaces").toObj<FunctionalModel>;
2925
+ getPrimaryKeyName: () => string;
2926
+ getPrimaryKey: () => PrimaryKeyType;
2927
+ validators: import("./interfaces").PropertyValidators<FunctionalModel, Readonly<{
2928
+ getName: () => string;
2929
+ getSingularName: () => string;
2930
+ getDisplayName: () => string;
2931
+ getPrimaryKeyName: () => string;
2932
+ getModelDefinition: () => Readonly<{
2933
+ getPrimaryKeyName?: (() => string) | undefined;
2934
+ properties: any & {
2935
+ readonly [x: string]: Readonly<{
2936
+ getConfig: () => object;
2937
+ getChoices: () => readonly (string | number | boolean | null)[];
2938
+ getDefaultValue: () => any;
2939
+ getConstantValue: () => any;
2940
+ getPropertyType: () => string;
2941
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2942
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2943
+ }>;
2944
+ readonly id?: Readonly<{
2945
+ getConfig: () => object;
2946
+ getChoices: () => readonly (string | number | boolean | null)[];
2947
+ getDefaultValue: () => any;
2948
+ getConstantValue: () => any;
2949
+ getPropertyType: () => string;
2950
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2951
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2952
+ }> | undefined;
2953
+ };
2954
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2955
+ singularName?: string | undefined;
2956
+ displayName?: string | undefined;
2957
+ }>;
2958
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2959
+ getOptions: () => object & Readonly<{
2960
+ [s: string]: any;
2961
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
2962
+ }>;
2963
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2964
+ }>>;
2965
+ validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<FunctionalModel>>;
2966
+ getModel: () => Readonly<{
2967
+ getName: () => string;
2968
+ getSingularName: () => string;
2969
+ getDisplayName: () => string;
2970
+ getPrimaryKeyName: () => string;
2971
+ getModelDefinition: () => Readonly<{
2972
+ getPrimaryKeyName?: (() => string) | undefined;
2973
+ properties: any & {
2974
+ readonly [x: string]: Readonly<{
2975
+ getConfig: () => object;
2976
+ getChoices: () => readonly (string | number | boolean | null)[];
2977
+ getDefaultValue: () => any;
2978
+ getConstantValue: () => any;
2979
+ getPropertyType: () => string;
2980
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2981
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2982
+ }>;
2983
+ readonly id?: Readonly<{
2984
+ getConfig: () => object;
2985
+ getChoices: () => readonly (string | number | boolean | null)[];
2986
+ getDefaultValue: () => any;
2987
+ getConstantValue: () => any;
2988
+ getPropertyType: () => string;
2989
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
2990
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
2991
+ }> | undefined;
2992
+ };
2993
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
2994
+ singularName?: string | undefined;
2995
+ displayName?: string | undefined;
2996
+ }>;
2997
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
2998
+ getOptions: () => object & Readonly<{
2999
+ [s: string]: any;
3000
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
3001
+ }>;
3002
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
3003
+ }>;
3004
+ }>>;
3005
+ }>) | undefined;
3006
+ } & {
3007
+ readonly [x: string]: Readonly<{
3008
+ getConfig: () => object;
3009
+ getChoices: () => readonly (string | number | boolean | null)[];
3010
+ getDefaultValue: () => any;
3011
+ getConstantValue: () => any;
3012
+ getPropertyType: () => string;
3013
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
3014
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
3015
+ }>;
3016
+ };
3017
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<any, Readonly<any>, Readonly<{
3018
+ get: import("./interfaces").PropertyGetters<any> & {
3019
+ id?: (() => import("./interfaces").MaybePromise<PrimaryKeyType>) | undefined;
3020
+ };
3021
+ references: Readonly<{
3022
+ [s: string]: () => Maybe<PrimaryKeyType>;
3023
+ }>;
3024
+ toObj: import("./interfaces").toObj<any>;
3025
+ getPrimaryKeyName: () => string;
3026
+ getPrimaryKey: () => PrimaryKeyType;
3027
+ validators: import("./interfaces").PropertyValidators<any, Readonly<any>>;
3028
+ validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<any>>;
3029
+ getModel: () => Readonly<any>;
3030
+ }>>[] | undefined;
3031
+ singularName?: string | undefined;
3032
+ displayName?: string | undefined;
3033
+ }>;
3034
+ getPrimaryKey: (t: any) => PrimaryKeyType;
3035
+ getOptions: () => object & Readonly<{
3036
+ [s: string]: any;
3037
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<{
3038
+ get: import("./interfaces").PropertyGetters<any> & {
3039
+ id?: (() => import("./interfaces").MaybePromise<PrimaryKeyType>) | undefined;
3040
+ };
3041
+ references: Readonly<{
3042
+ [s: string]: () => Maybe<PrimaryKeyType>;
3043
+ }>;
3044
+ toObj: import("./interfaces").toObj<any>;
3045
+ getPrimaryKeyName: () => string;
3046
+ getPrimaryKey: () => PrimaryKeyType;
3047
+ validators: import("./interfaces").PropertyValidators<any, Readonly<any>>;
3048
+ validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<any>>;
3049
+ getModel: () => Readonly<any>;
3050
+ }>) => void>>;
3051
+ }>;
3052
+ create: (data: any) => Readonly<{
3053
+ get: import("./interfaces").PropertyGetters<any> & {
3054
+ id?: (() => import("./interfaces").MaybePromise<PrimaryKeyType>) | undefined;
3055
+ };
3056
+ references: Readonly<{
3057
+ [s: string]: () => Maybe<PrimaryKeyType>;
3058
+ }>;
3059
+ toObj: import("./interfaces").toObj<any>;
3060
+ getPrimaryKeyName: () => string;
3061
+ getPrimaryKey: () => PrimaryKeyType;
3062
+ validators: import("./interfaces").PropertyValidators<any, Readonly<any>>;
3063
+ validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<any>>;
3064
+ getModel: () => Readonly<any>;
3065
+ }>;
3066
+ }>, Readonly<{
3067
+ get: import("./interfaces").PropertyGetters<any> & {
3068
+ id?: (() => import("./interfaces").MaybePromise<PrimaryKeyType>) | undefined;
3069
+ };
3070
+ references: Readonly<{
3071
+ [s: string]: () => Maybe<PrimaryKeyType>;
3072
+ }>;
3073
+ toObj: import("./interfaces").toObj<any>;
3074
+ getPrimaryKeyName: () => string;
3075
+ getPrimaryKey: () => PrimaryKeyType;
3076
+ validators: import("./interfaces").PropertyValidators<any, Readonly<any>>;
3077
+ validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<any>>;
3078
+ getModel: () => Readonly<any>;
3079
+ }>>[] | undefined;
3080
+ maxLength?: number | undefined;
3081
+ minLength?: number | undefined;
3082
+ maxValue?: number | undefined;
3083
+ minValue?: number | undefined;
3084
+ autoNow?: boolean | undefined;
3085
+ fetcher?: import("./interfaces").ModelFetcher | undefined;
3086
+ }> & Readonly<{
3087
+ required?: boolean | undefined;
3088
+ isInteger?: boolean | undefined;
3089
+ isNumber?: boolean | undefined;
3090
+ isString?: boolean | undefined;
3091
+ isArray?: boolean | undefined;
3092
+ isBoolean?: boolean | undefined;
3093
+ }> & {
3094
+ /**
3095
+ * A date-fns format.
3096
+ */
3097
+ format?: string | undefined;
3098
+ isDateOnly?: boolean | undefined;
3099
+ }, additionalMetadata?: {}) => Readonly<{
3100
+ getConfig: () => object;
3101
+ getChoices: () => readonly (string | number | boolean | null)[];
3102
+ getDefaultValue: () => TModifier;
3103
+ getConstantValue: () => TModifier;
3104
+ getPropertyType: () => string;
3105
+ createGetter: (value: TModifier, modelData: FunctionalModel, modelInstance: Readonly<{
3106
+ get: import("./interfaces").PropertyGetters<FunctionalModel> & {
3107
+ id?: (() => import("./interfaces").MaybePromise<PrimaryKeyType>) | undefined;
3108
+ };
3109
+ references: Readonly<{
3110
+ [s: string]: () => Maybe<PrimaryKeyType>;
3111
+ }>;
3112
+ toObj: import("./interfaces").toObj<FunctionalModel>;
3113
+ getPrimaryKeyName: () => string;
3114
+ getPrimaryKey: () => PrimaryKeyType;
3115
+ validators: import("./interfaces").PropertyValidators<FunctionalModel, Readonly<{
3116
+ getName: () => string;
3117
+ getSingularName: () => string;
3118
+ getDisplayName: () => string;
3119
+ getPrimaryKeyName: () => string;
3120
+ getModelDefinition: () => Readonly<{
3121
+ getPrimaryKeyName?: (() => string) | undefined;
3122
+ properties: any & {
3123
+ readonly [x: string]: Readonly<{
3124
+ getConfig: () => object;
3125
+ getChoices: () => readonly (string | number | boolean | null)[];
3126
+ getDefaultValue: () => any;
3127
+ getConstantValue: () => any;
3128
+ getPropertyType: () => string;
3129
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
3130
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
3131
+ }>;
3132
+ readonly id?: Readonly<{
3133
+ getConfig: () => object;
3134
+ getChoices: () => readonly (string | number | boolean | null)[];
3135
+ getDefaultValue: () => any;
3136
+ getConstantValue: () => any;
3137
+ getPropertyType: () => string;
3138
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
3139
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
3140
+ }> | undefined;
3141
+ };
3142
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
3143
+ singularName?: string | undefined;
3144
+ displayName?: string | undefined;
3145
+ }>;
3146
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
3147
+ getOptions: () => object & Readonly<{
3148
+ [s: string]: any;
3149
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
3150
+ }>;
3151
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
3152
+ }>>;
3153
+ validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<FunctionalModel>>;
3154
+ getModel: () => Readonly<{
3155
+ getName: () => string;
3156
+ getSingularName: () => string;
3157
+ getDisplayName: () => string;
3158
+ getPrimaryKeyName: () => string;
3159
+ getModelDefinition: () => Readonly<{
3160
+ getPrimaryKeyName?: (() => string) | undefined;
3161
+ properties: any & {
3162
+ readonly [x: string]: Readonly<{
3163
+ getConfig: () => object;
3164
+ getChoices: () => readonly (string | number | boolean | null)[];
3165
+ getDefaultValue: () => any;
3166
+ getConstantValue: () => any;
3167
+ getPropertyType: () => string;
3168
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
3169
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
3170
+ }>;
3171
+ readonly id?: Readonly<{
3172
+ getConfig: () => object;
3173
+ getChoices: () => readonly (string | number | boolean | null)[];
3174
+ getDefaultValue: () => any;
3175
+ getConstantValue: () => any;
3176
+ getPropertyType: () => string;
3177
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
3178
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
3179
+ }> | undefined;
3180
+ };
3181
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
3182
+ singularName?: string | undefined;
3183
+ displayName?: string | undefined;
3184
+ }>;
3185
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
3186
+ getOptions: () => object & Readonly<{
3187
+ [s: string]: any;
3188
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
3189
+ }>;
3190
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
3191
+ }>;
3192
+ }>) => ValueGetter<TModifier, FunctionalModel, Readonly<{
3193
+ getName: () => string;
3194
+ getSingularName: () => string;
3195
+ getDisplayName: () => string;
3196
+ getPrimaryKeyName: () => string;
3197
+ getModelDefinition: () => Readonly<{
3198
+ getPrimaryKeyName?: (() => string) | undefined;
3199
+ properties: any & {
3200
+ readonly [x: string]: Readonly<{
3201
+ getConfig: () => object;
3202
+ getChoices: () => readonly (string | number | boolean | null)[];
3203
+ getDefaultValue: () => any;
3204
+ getConstantValue: () => any;
3205
+ getPropertyType: () => string;
3206
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
3207
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
3208
+ }>;
3209
+ readonly id?: Readonly<{
3210
+ getConfig: () => object;
3211
+ getChoices: () => readonly (string | number | boolean | null)[];
3212
+ getDefaultValue: () => any;
3213
+ getConstantValue: () => any;
3214
+ getPropertyType: () => string;
3215
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
3216
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
3217
+ }> | undefined;
3218
+ };
3219
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
3220
+ singularName?: string | undefined;
3221
+ displayName?: string | undefined;
3222
+ }>;
3223
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
3224
+ getOptions: () => object & Readonly<{
3225
+ [s: string]: any;
3226
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
3227
+ }>;
3228
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
3229
+ }>, Readonly<{
3230
+ get: import("./interfaces").PropertyGetters<FunctionalModel> & {
3231
+ id?: (() => import("./interfaces").MaybePromise<PrimaryKeyType>) | undefined;
3232
+ };
3233
+ references: Readonly<{
3234
+ [s: string]: () => Maybe<PrimaryKeyType>;
3235
+ }>;
3236
+ toObj: import("./interfaces").toObj<FunctionalModel>;
3237
+ getPrimaryKeyName: () => string;
3238
+ getPrimaryKey: () => PrimaryKeyType;
3239
+ validators: import("./interfaces").PropertyValidators<FunctionalModel, Readonly<{
3240
+ getName: () => string;
3241
+ getSingularName: () => string;
3242
+ getDisplayName: () => string;
3243
+ getPrimaryKeyName: () => string;
3244
+ getModelDefinition: () => Readonly<{
3245
+ getPrimaryKeyName?: (() => string) | undefined;
3246
+ properties: any & {
3247
+ readonly [x: string]: Readonly<{
3248
+ getConfig: () => object;
3249
+ getChoices: () => readonly (string | number | boolean | null)[];
3250
+ getDefaultValue: () => any;
3251
+ getConstantValue: () => any;
3252
+ getPropertyType: () => string;
3253
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
3254
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
3255
+ }>;
3256
+ readonly id?: Readonly<{
3257
+ getConfig: () => object;
3258
+ getChoices: () => readonly (string | number | boolean | null)[];
3259
+ getDefaultValue: () => any;
3260
+ getConstantValue: () => any;
3261
+ getPropertyType: () => string;
3262
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
3263
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
3264
+ }> | undefined;
3265
+ };
3266
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
3267
+ singularName?: string | undefined;
3268
+ displayName?: string | undefined;
3269
+ }>;
3270
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
3271
+ getOptions: () => object & Readonly<{
3272
+ [s: string]: any;
3273
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
3274
+ }>;
3275
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
3276
+ }>>;
3277
+ validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<FunctionalModel>>;
3278
+ getModel: () => Readonly<{
3279
+ getName: () => string;
3280
+ getSingularName: () => string;
3281
+ getDisplayName: () => string;
3282
+ getPrimaryKeyName: () => string;
3283
+ getModelDefinition: () => Readonly<{
3284
+ getPrimaryKeyName?: (() => string) | undefined;
3285
+ properties: any & {
3286
+ readonly [x: string]: Readonly<{
3287
+ getConfig: () => object;
3288
+ getChoices: () => readonly (string | number | boolean | null)[];
3289
+ getDefaultValue: () => any;
3290
+ getConstantValue: () => any;
3291
+ getPropertyType: () => string;
3292
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
3293
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
3294
+ }>;
3295
+ readonly id?: Readonly<{
3296
+ getConfig: () => object;
3297
+ getChoices: () => readonly (string | number | boolean | null)[];
3298
+ getDefaultValue: () => any;
3299
+ getConstantValue: () => any;
3300
+ getPropertyType: () => string;
3301
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
3302
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
3303
+ }> | undefined;
3304
+ };
3305
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
3306
+ singularName?: string | undefined;
3307
+ displayName?: string | undefined;
3308
+ }>;
3309
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
3310
+ getOptions: () => object & Readonly<{
3311
+ [s: string]: any;
3312
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
3313
+ }>;
3314
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
3315
+ }>;
3316
+ }>>;
3317
+ getValidator: (valueGetter: ValueGetter<TModifier, FunctionalModel, Readonly<{
3318
+ getName: () => string;
3319
+ getSingularName: () => string;
3320
+ getDisplayName: () => string;
3321
+ getPrimaryKeyName: () => string;
3322
+ getModelDefinition: () => Readonly<{
3323
+ getPrimaryKeyName?: (() => string) | undefined;
3324
+ properties: any & {
3325
+ readonly [x: string]: Readonly<{
3326
+ getConfig: () => object;
3327
+ getChoices: () => readonly (string | number | boolean | null)[];
3328
+ getDefaultValue: () => any;
3329
+ getConstantValue: () => any;
3330
+ getPropertyType: () => string;
3331
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
3332
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
3333
+ }>;
3334
+ readonly id?: Readonly<{
3335
+ getConfig: () => object;
3336
+ getChoices: () => readonly (string | number | boolean | null)[];
3337
+ getDefaultValue: () => any;
3338
+ getConstantValue: () => any;
3339
+ getPropertyType: () => string;
3340
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
3341
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
3342
+ }> | undefined;
3343
+ };
3344
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
3345
+ singularName?: string | undefined;
3346
+ displayName?: string | undefined;
3347
+ }>;
3348
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
3349
+ getOptions: () => object & Readonly<{
3350
+ [s: string]: any;
3351
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
3352
+ }>;
3353
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
2294
3354
  }>, Readonly<{
2295
3355
  get: import("./interfaces").PropertyGetters<FunctionalModel> & {
2296
3356
  id?: (() => import("./interfaces").MaybePromise<PrimaryKeyType>) | undefined;
@@ -19775,55 +20835,533 @@ declare const AdvancedModelReferenceProperty: <T extends FunctionalModel, TModel
19775
20835
  get: import("./interfaces").PropertyGetters<T> & {
19776
20836
  id?: (() => import("./interfaces").MaybePromise<PrimaryKeyType>) | undefined;
19777
20837
  };
19778
- references: Readonly<{
19779
- [s: string]: () => Maybe<PrimaryKeyType>;
20838
+ references: Readonly<{
20839
+ [s: string]: () => Maybe<PrimaryKeyType>;
20840
+ }>;
20841
+ toObj: import("./interfaces").toObj<T>;
20842
+ getPrimaryKeyName: () => string;
20843
+ getPrimaryKey: () => PrimaryKeyType;
20844
+ validators: import("./interfaces").PropertyValidators<T, Readonly<any>>;
20845
+ validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<T>>;
20846
+ getModel: () => Readonly<any>;
20847
+ }>>[] | undefined;
20848
+ singularName?: string | undefined;
20849
+ displayName?: string | undefined;
20850
+ }>;
20851
+ getPrimaryKey: (t: T | TypedJsonObj<T>) => PrimaryKeyType;
20852
+ getOptions: () => object & Readonly<{
20853
+ [s: string]: any;
20854
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<{
20855
+ get: import("./interfaces").PropertyGetters<T> & {
20856
+ id?: (() => import("./interfaces").MaybePromise<PrimaryKeyType>) | undefined;
20857
+ };
20858
+ references: Readonly<{
20859
+ [s: string]: () => Maybe<PrimaryKeyType>;
20860
+ }>;
20861
+ toObj: import("./interfaces").toObj<T>;
20862
+ getPrimaryKeyName: () => string;
20863
+ getPrimaryKey: () => PrimaryKeyType;
20864
+ validators: import("./interfaces").PropertyValidators<T, Readonly<any>>;
20865
+ validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<T>>;
20866
+ getModel: () => Readonly<any>;
20867
+ }>) => void>>;
20868
+ }>;
20869
+ create: (data: import("./interfaces").CreateParams<T>) => Readonly<{
20870
+ get: import("./interfaces").PropertyGetters<T> & {
20871
+ id?: (() => import("./interfaces").MaybePromise<PrimaryKeyType>) | undefined;
20872
+ };
20873
+ references: Readonly<{
20874
+ [s: string]: () => Maybe<PrimaryKeyType>;
20875
+ }>;
20876
+ toObj: import("./interfaces").toObj<T>;
20877
+ getPrimaryKeyName: () => string;
20878
+ getPrimaryKey: () => PrimaryKeyType;
20879
+ validators: import("./interfaces").PropertyValidators<T, Readonly<any>>;
20880
+ validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<T>>;
20881
+ getModel: () => Readonly<any>;
20882
+ }>;
20883
+ }>>;
20884
+ validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<T>>;
20885
+ getModel: () => Readonly<any>;
20886
+ }>>>>(model: MaybeFunction<TModel>, config?: PropertyConfig<TModifier>, additionalMetadata?: {}) => ModelReferencePropertyInstance<T, TModifier, TModel, TModelInstance>;
20887
+ /**
20888
+ * A property for denormalizing values.
20889
+ * @param propertyType
20890
+ * @param calculate
20891
+ * @param config
20892
+ * @param additionalMetadata
20893
+ * @constructor
20894
+ */
20895
+ declare const DenormalizedProperty: <T extends FunctionalValue, TModel extends FunctionalModel>(propertyType: string, calculate: CalculateDenormalization<T, TModel>, config?: PropertyConfig<T>, additionalMetadata?: {}) => Readonly<{
20896
+ getConfig: () => object;
20897
+ getChoices: () => readonly (string | number | boolean | null)[];
20898
+ getDefaultValue: () => T;
20899
+ getConstantValue: () => T;
20900
+ getPropertyType: () => string;
20901
+ createGetter: (value: T, modelData: FunctionalModel, modelInstance: Readonly<{
20902
+ get: import("./interfaces").PropertyGetters<FunctionalModel> & {
20903
+ id?: (() => import("./interfaces").MaybePromise<PrimaryKeyType>) | undefined;
20904
+ };
20905
+ references: Readonly<{
20906
+ [s: string]: () => Maybe<PrimaryKeyType>;
20907
+ }>;
20908
+ toObj: import("./interfaces").toObj<FunctionalModel>;
20909
+ getPrimaryKeyName: () => string;
20910
+ getPrimaryKey: () => PrimaryKeyType;
20911
+ validators: import("./interfaces").PropertyValidators<FunctionalModel, Readonly<{
20912
+ getName: () => string;
20913
+ getSingularName: () => string;
20914
+ getDisplayName: () => string;
20915
+ getPrimaryKeyName: () => string;
20916
+ getModelDefinition: () => Readonly<{
20917
+ getPrimaryKeyName?: (() => string) | undefined;
20918
+ properties: any & {
20919
+ readonly [x: string]: Readonly<{
20920
+ getConfig: () => object;
20921
+ getChoices: () => readonly (string | number | boolean | null)[];
20922
+ getDefaultValue: () => any;
20923
+ getConstantValue: () => any;
20924
+ getPropertyType: () => string;
20925
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
20926
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
20927
+ }>;
20928
+ readonly id?: Readonly<{
20929
+ getConfig: () => object;
20930
+ getChoices: () => readonly (string | number | boolean | null)[];
20931
+ getDefaultValue: () => any;
20932
+ getConstantValue: () => any;
20933
+ getPropertyType: () => string;
20934
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
20935
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
20936
+ }> | undefined;
20937
+ };
20938
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
20939
+ singularName?: string | undefined;
20940
+ displayName?: string | undefined;
20941
+ }>;
20942
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
20943
+ getOptions: () => object & Readonly<{
20944
+ [s: string]: any;
20945
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
20946
+ }>;
20947
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
20948
+ }>>;
20949
+ validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<FunctionalModel>>;
20950
+ getModel: () => Readonly<{
20951
+ getName: () => string;
20952
+ getSingularName: () => string;
20953
+ getDisplayName: () => string;
20954
+ getPrimaryKeyName: () => string;
20955
+ getModelDefinition: () => Readonly<{
20956
+ getPrimaryKeyName?: (() => string) | undefined;
20957
+ properties: any & {
20958
+ readonly [x: string]: Readonly<{
20959
+ getConfig: () => object;
20960
+ getChoices: () => readonly (string | number | boolean | null)[];
20961
+ getDefaultValue: () => any;
20962
+ getConstantValue: () => any;
20963
+ getPropertyType: () => string;
20964
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
20965
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
20966
+ }>;
20967
+ readonly id?: Readonly<{
20968
+ getConfig: () => object;
20969
+ getChoices: () => readonly (string | number | boolean | null)[];
20970
+ getDefaultValue: () => any;
20971
+ getConstantValue: () => any;
20972
+ getPropertyType: () => string;
20973
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
20974
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
20975
+ }> | undefined;
20976
+ };
20977
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
20978
+ singularName?: string | undefined;
20979
+ displayName?: string | undefined;
20980
+ }>;
20981
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
20982
+ getOptions: () => object & Readonly<{
20983
+ [s: string]: any;
20984
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
20985
+ }>;
20986
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
20987
+ }>;
20988
+ }>) => ValueGetter<T, FunctionalModel, Readonly<{
20989
+ getName: () => string;
20990
+ getSingularName: () => string;
20991
+ getDisplayName: () => string;
20992
+ getPrimaryKeyName: () => string;
20993
+ getModelDefinition: () => Readonly<{
20994
+ getPrimaryKeyName?: (() => string) | undefined;
20995
+ properties: any & {
20996
+ readonly [x: string]: Readonly<{
20997
+ getConfig: () => object;
20998
+ getChoices: () => readonly (string | number | boolean | null)[];
20999
+ getDefaultValue: () => any;
21000
+ getConstantValue: () => any;
21001
+ getPropertyType: () => string;
21002
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
21003
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
21004
+ }>;
21005
+ readonly id?: Readonly<{
21006
+ getConfig: () => object;
21007
+ getChoices: () => readonly (string | number | boolean | null)[];
21008
+ getDefaultValue: () => any;
21009
+ getConstantValue: () => any;
21010
+ getPropertyType: () => string;
21011
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
21012
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
21013
+ }> | undefined;
21014
+ };
21015
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
21016
+ singularName?: string | undefined;
21017
+ displayName?: string | undefined;
21018
+ }>;
21019
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
21020
+ getOptions: () => object & Readonly<{
21021
+ [s: string]: any;
21022
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
21023
+ }>;
21024
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
21025
+ }>, Readonly<{
21026
+ get: import("./interfaces").PropertyGetters<FunctionalModel> & {
21027
+ id?: (() => import("./interfaces").MaybePromise<PrimaryKeyType>) | undefined;
21028
+ };
21029
+ references: Readonly<{
21030
+ [s: string]: () => Maybe<PrimaryKeyType>;
21031
+ }>;
21032
+ toObj: import("./interfaces").toObj<FunctionalModel>;
21033
+ getPrimaryKeyName: () => string;
21034
+ getPrimaryKey: () => PrimaryKeyType;
21035
+ validators: import("./interfaces").PropertyValidators<FunctionalModel, Readonly<{
21036
+ getName: () => string;
21037
+ getSingularName: () => string;
21038
+ getDisplayName: () => string;
21039
+ getPrimaryKeyName: () => string;
21040
+ getModelDefinition: () => Readonly<{
21041
+ getPrimaryKeyName?: (() => string) | undefined;
21042
+ properties: any & {
21043
+ readonly [x: string]: Readonly<{
21044
+ getConfig: () => object;
21045
+ getChoices: () => readonly (string | number | boolean | null)[];
21046
+ getDefaultValue: () => any;
21047
+ getConstantValue: () => any;
21048
+ getPropertyType: () => string;
21049
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
21050
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
21051
+ }>;
21052
+ readonly id?: Readonly<{
21053
+ getConfig: () => object;
21054
+ getChoices: () => readonly (string | number | boolean | null)[];
21055
+ getDefaultValue: () => any;
21056
+ getConstantValue: () => any;
21057
+ getPropertyType: () => string;
21058
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
21059
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
21060
+ }> | undefined;
21061
+ };
21062
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
21063
+ singularName?: string | undefined;
21064
+ displayName?: string | undefined;
21065
+ }>;
21066
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
21067
+ getOptions: () => object & Readonly<{
21068
+ [s: string]: any;
21069
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
21070
+ }>;
21071
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
21072
+ }>>;
21073
+ validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<FunctionalModel>>;
21074
+ getModel: () => Readonly<{
21075
+ getName: () => string;
21076
+ getSingularName: () => string;
21077
+ getDisplayName: () => string;
21078
+ getPrimaryKeyName: () => string;
21079
+ getModelDefinition: () => Readonly<{
21080
+ getPrimaryKeyName?: (() => string) | undefined;
21081
+ properties: any & {
21082
+ readonly [x: string]: Readonly<{
21083
+ getConfig: () => object;
21084
+ getChoices: () => readonly (string | number | boolean | null)[];
21085
+ getDefaultValue: () => any;
21086
+ getConstantValue: () => any;
21087
+ getPropertyType: () => string;
21088
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
21089
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
21090
+ }>;
21091
+ readonly id?: Readonly<{
21092
+ getConfig: () => object;
21093
+ getChoices: () => readonly (string | number | boolean | null)[];
21094
+ getDefaultValue: () => any;
21095
+ getConstantValue: () => any;
21096
+ getPropertyType: () => string;
21097
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
21098
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
21099
+ }> | undefined;
21100
+ };
21101
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
21102
+ singularName?: string | undefined;
21103
+ displayName?: string | undefined;
21104
+ }>;
21105
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
21106
+ getOptions: () => object & Readonly<{
21107
+ [s: string]: any;
21108
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
21109
+ }>;
21110
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
21111
+ }>;
21112
+ }>>;
21113
+ getValidator: (valueGetter: ValueGetter<T, FunctionalModel, Readonly<{
21114
+ getName: () => string;
21115
+ getSingularName: () => string;
21116
+ getDisplayName: () => string;
21117
+ getPrimaryKeyName: () => string;
21118
+ getModelDefinition: () => Readonly<{
21119
+ getPrimaryKeyName?: (() => string) | undefined;
21120
+ properties: any & {
21121
+ readonly [x: string]: Readonly<{
21122
+ getConfig: () => object;
21123
+ getChoices: () => readonly (string | number | boolean | null)[];
21124
+ getDefaultValue: () => any;
21125
+ getConstantValue: () => any;
21126
+ getPropertyType: () => string;
21127
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
21128
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
19780
21129
  }>;
19781
- toObj: import("./interfaces").toObj<T>;
19782
- getPrimaryKeyName: () => string;
19783
- getPrimaryKey: () => PrimaryKeyType;
19784
- validators: import("./interfaces").PropertyValidators<T, Readonly<any>>;
19785
- validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<T>>;
19786
- getModel: () => Readonly<any>;
19787
- }>>[] | undefined;
21130
+ readonly id?: Readonly<{
21131
+ getConfig: () => object;
21132
+ getChoices: () => readonly (string | number | boolean | null)[];
21133
+ getDefaultValue: () => any;
21134
+ getConstantValue: () => any;
21135
+ getPropertyType: () => string;
21136
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
21137
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
21138
+ }> | undefined;
21139
+ };
21140
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
19788
21141
  singularName?: string | undefined;
19789
21142
  displayName?: string | undefined;
19790
21143
  }>;
19791
- getPrimaryKey: (t: T | TypedJsonObj<T>) => PrimaryKeyType;
21144
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
19792
21145
  getOptions: () => object & Readonly<{
19793
21146
  [s: string]: any;
19794
- instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<{
19795
- get: import("./interfaces").PropertyGetters<T> & {
19796
- id?: (() => import("./interfaces").MaybePromise<PrimaryKeyType>) | undefined;
21147
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
21148
+ }>;
21149
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
21150
+ }>, Readonly<{
21151
+ get: import("./interfaces").PropertyGetters<FunctionalModel> & {
21152
+ id?: (() => import("./interfaces").MaybePromise<PrimaryKeyType>) | undefined;
21153
+ };
21154
+ references: Readonly<{
21155
+ [s: string]: () => Maybe<PrimaryKeyType>;
21156
+ }>;
21157
+ toObj: import("./interfaces").toObj<FunctionalModel>;
21158
+ getPrimaryKeyName: () => string;
21159
+ getPrimaryKey: () => PrimaryKeyType;
21160
+ validators: import("./interfaces").PropertyValidators<FunctionalModel, Readonly<{
21161
+ getName: () => string;
21162
+ getSingularName: () => string;
21163
+ getDisplayName: () => string;
21164
+ getPrimaryKeyName: () => string;
21165
+ getModelDefinition: () => Readonly<{
21166
+ getPrimaryKeyName?: (() => string) | undefined;
21167
+ properties: any & {
21168
+ readonly [x: string]: Readonly<{
21169
+ getConfig: () => object;
21170
+ getChoices: () => readonly (string | number | boolean | null)[];
21171
+ getDefaultValue: () => any;
21172
+ getConstantValue: () => any;
21173
+ getPropertyType: () => string;
21174
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
21175
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
21176
+ }>;
21177
+ readonly id?: Readonly<{
21178
+ getConfig: () => object;
21179
+ getChoices: () => readonly (string | number | boolean | null)[];
21180
+ getDefaultValue: () => any;
21181
+ getConstantValue: () => any;
21182
+ getPropertyType: () => string;
21183
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
21184
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
21185
+ }> | undefined;
19797
21186
  };
19798
- references: Readonly<{
19799
- [s: string]: () => Maybe<PrimaryKeyType>;
19800
- }>;
19801
- toObj: import("./interfaces").toObj<T>;
19802
- getPrimaryKeyName: () => string;
19803
- getPrimaryKey: () => PrimaryKeyType;
19804
- validators: import("./interfaces").PropertyValidators<T, Readonly<any>>;
19805
- validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<T>>;
19806
- getModel: () => Readonly<any>;
19807
- }>) => void>>;
21187
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
21188
+ singularName?: string | undefined;
21189
+ displayName?: string | undefined;
21190
+ }>;
21191
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
21192
+ getOptions: () => object & Readonly<{
21193
+ [s: string]: any;
21194
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
21195
+ }>;
21196
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
21197
+ }>>;
21198
+ validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<FunctionalModel>>;
21199
+ getModel: () => Readonly<{
21200
+ getName: () => string;
21201
+ getSingularName: () => string;
21202
+ getDisplayName: () => string;
21203
+ getPrimaryKeyName: () => string;
21204
+ getModelDefinition: () => Readonly<{
21205
+ getPrimaryKeyName?: (() => string) | undefined;
21206
+ properties: any & {
21207
+ readonly [x: string]: Readonly<{
21208
+ getConfig: () => object;
21209
+ getChoices: () => readonly (string | number | boolean | null)[];
21210
+ getDefaultValue: () => any;
21211
+ getConstantValue: () => any;
21212
+ getPropertyType: () => string;
21213
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
21214
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
21215
+ }>;
21216
+ readonly id?: Readonly<{
21217
+ getConfig: () => object;
21218
+ getChoices: () => readonly (string | number | boolean | null)[];
21219
+ getDefaultValue: () => any;
21220
+ getConstantValue: () => any;
21221
+ getPropertyType: () => string;
21222
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
21223
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
21224
+ }> | undefined;
21225
+ };
21226
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
21227
+ singularName?: string | undefined;
21228
+ displayName?: string | undefined;
21229
+ }>;
21230
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
21231
+ getOptions: () => object & Readonly<{
21232
+ [s: string]: any;
21233
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
21234
+ }>;
21235
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
19808
21236
  }>;
19809
- create: (data: import("./interfaces").CreateParams<T>) => Readonly<{
19810
- get: import("./interfaces").PropertyGetters<T> & {
19811
- id?: (() => import("./interfaces").MaybePromise<PrimaryKeyType>) | undefined;
21237
+ }>>) => PropertyValidator<FunctionalModel, Readonly<{
21238
+ getName: () => string;
21239
+ getSingularName: () => string;
21240
+ getDisplayName: () => string;
21241
+ getPrimaryKeyName: () => string;
21242
+ getModelDefinition: () => Readonly<{
21243
+ getPrimaryKeyName?: (() => string) | undefined;
21244
+ properties: any & {
21245
+ readonly [x: string]: Readonly<{
21246
+ getConfig: () => object;
21247
+ getChoices: () => readonly (string | number | boolean | null)[];
21248
+ getDefaultValue: () => any;
21249
+ getConstantValue: () => any;
21250
+ getPropertyType: () => string;
21251
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
21252
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
21253
+ }>;
21254
+ readonly id?: Readonly<{
21255
+ getConfig: () => object;
21256
+ getChoices: () => readonly (string | number | boolean | null)[];
21257
+ getDefaultValue: () => any;
21258
+ getConstantValue: () => any;
21259
+ getPropertyType: () => string;
21260
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
21261
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
21262
+ }> | undefined;
19812
21263
  };
19813
- references: Readonly<{
19814
- [s: string]: () => Maybe<PrimaryKeyType>;
21264
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
21265
+ singularName?: string | undefined;
21266
+ displayName?: string | undefined;
21267
+ }>;
21268
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
21269
+ getOptions: () => object & Readonly<{
21270
+ [s: string]: any;
21271
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
21272
+ }>;
21273
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
21274
+ }>, Readonly<{
21275
+ get: import("./interfaces").PropertyGetters<FunctionalModel> & {
21276
+ id?: (() => import("./interfaces").MaybePromise<PrimaryKeyType>) | undefined;
21277
+ };
21278
+ references: Readonly<{
21279
+ [s: string]: () => Maybe<PrimaryKeyType>;
21280
+ }>;
21281
+ toObj: import("./interfaces").toObj<FunctionalModel>;
21282
+ getPrimaryKeyName: () => string;
21283
+ getPrimaryKey: () => PrimaryKeyType;
21284
+ validators: import("./interfaces").PropertyValidators<FunctionalModel, Readonly<{
21285
+ getName: () => string;
21286
+ getSingularName: () => string;
21287
+ getDisplayName: () => string;
21288
+ getPrimaryKeyName: () => string;
21289
+ getModelDefinition: () => Readonly<{
21290
+ getPrimaryKeyName?: (() => string) | undefined;
21291
+ properties: any & {
21292
+ readonly [x: string]: Readonly<{
21293
+ getConfig: () => object;
21294
+ getChoices: () => readonly (string | number | boolean | null)[];
21295
+ getDefaultValue: () => any;
21296
+ getConstantValue: () => any;
21297
+ getPropertyType: () => string;
21298
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
21299
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
21300
+ }>;
21301
+ readonly id?: Readonly<{
21302
+ getConfig: () => object;
21303
+ getChoices: () => readonly (string | number | boolean | null)[];
21304
+ getDefaultValue: () => any;
21305
+ getConstantValue: () => any;
21306
+ getPropertyType: () => string;
21307
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
21308
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
21309
+ }> | undefined;
21310
+ };
21311
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
21312
+ singularName?: string | undefined;
21313
+ displayName?: string | undefined;
19815
21314
  }>;
19816
- toObj: import("./interfaces").toObj<T>;
21315
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
21316
+ getOptions: () => object & Readonly<{
21317
+ [s: string]: any;
21318
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
21319
+ }>;
21320
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
21321
+ }>>;
21322
+ validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<FunctionalModel>>;
21323
+ getModel: () => Readonly<{
21324
+ getName: () => string;
21325
+ getSingularName: () => string;
21326
+ getDisplayName: () => string;
19817
21327
  getPrimaryKeyName: () => string;
19818
- getPrimaryKey: () => PrimaryKeyType;
19819
- validators: import("./interfaces").PropertyValidators<T, Readonly<any>>;
19820
- validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<T>>;
19821
- getModel: () => Readonly<any>;
21328
+ getModelDefinition: () => Readonly<{
21329
+ getPrimaryKeyName?: (() => string) | undefined;
21330
+ properties: any & {
21331
+ readonly [x: string]: Readonly<{
21332
+ getConfig: () => object;
21333
+ getChoices: () => readonly (string | number | boolean | null)[];
21334
+ getDefaultValue: () => any;
21335
+ getConstantValue: () => any;
21336
+ getPropertyType: () => string;
21337
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
21338
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
21339
+ }>;
21340
+ readonly id?: Readonly<{
21341
+ getConfig: () => object;
21342
+ getChoices: () => readonly (string | number | boolean | null)[];
21343
+ getDefaultValue: () => any;
21344
+ getConstantValue: () => any;
21345
+ getPropertyType: () => string;
21346
+ createGetter: (value: any, modelData: FunctionalModel, modelInstance: Readonly<any>) => ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>;
21347
+ getValidator: (valueGetter: ValueGetter<any, FunctionalModel, Readonly<any>, Readonly<any>>) => PropertyValidator<FunctionalModel, Readonly<any>, Readonly<any>>;
21348
+ }> | undefined;
21349
+ };
21350
+ modelValidators?: readonly import("./interfaces").ModelValidatorComponent<FunctionalModel, Readonly<any>, Readonly<any>>[] | undefined;
21351
+ singularName?: string | undefined;
21352
+ displayName?: string | undefined;
21353
+ }>;
21354
+ getPrimaryKey: (t: FunctionalModel | TypedJsonObj<FunctionalModel>) => PrimaryKeyType;
21355
+ getOptions: () => object & Readonly<{
21356
+ [s: string]: any;
21357
+ instanceCreatedCallback: import("./interfaces").Nullable<Arrayable<(instance: Readonly<any>) => void>>;
21358
+ }>;
21359
+ create: (data: import("./interfaces").CreateParams<FunctionalModel>) => Readonly<any>;
19822
21360
  }>;
19823
21361
  }>>;
19824
- validate: (options?: object | undefined) => Promise<import("./interfaces").ModelErrors<T>>;
19825
- getModel: () => Readonly<any>;
19826
- }>>>>(model: MaybeFunction<TModel>, config?: PropertyConfig<TModifier>, additionalMetadata?: {}) => ModelReferencePropertyInstance<T, TModifier, TModel, TModelInstance>;
21362
+ }> & {
21363
+ calculate: CalculateDenormalization<T, TModel>;
21364
+ };
19827
21365
  /**
19828
21366
  * An Id that is naturally formed by the other properties within a model.
19829
21367
  * Instead of having a "globally unique" id the model is unique because
@@ -20776,4 +22314,4 @@ declare const UniqueIdProperty: <TModifier extends PropertyModifier<string>>(con
20776
22314
  }>;
20777
22315
  }>>;
20778
22316
  }>;
20779
- export { Property, NaturalIdProperty, UniqueId, UniqueIdProperty, DateProperty, ArrayProperty, ModelReferenceProperty, AdvancedModelReferenceProperty, IntegerProperty, TextProperty, ConstantValueProperty, NumberProperty, ObjectProperty, EmailProperty, BooleanProperty, };
22317
+ export { Property, NaturalIdProperty, UniqueId, UniqueIdProperty, DateProperty, ArrayProperty, ModelReferenceProperty, AdvancedModelReferenceProperty, IntegerProperty, TextProperty, ConstantValueProperty, NumberProperty, ObjectProperty, EmailProperty, BooleanProperty, DenormalizedProperty, };