@vaadin/hilla-models
Version:
Generative form models for Hilla
18 lines (17 loc) • 1.57 kB
TypeScript
import type { EmptyObject } from 'type-fest';
import { type Constraint, type NonAttributedConstraint, Model, type Target, type Value, type Extensions, type AnyObject, type Enum } from './Model.js';
import { ObjectModelBuilder } from './modelBuilders.js';
import { type ArrayModel, EnumModel, type UnionModel, type OptionalModel } from './models.js';
export { self, optional, array, constrained, meta } from './converters.js';
export declare function attach<M extends Model>(this: void, model: M, targetProvider: () => Target<Value<M>>): M;
export declare function extend<M extends Model<AnyObject>>(this: void, base: M): ObjectModelBuilder<Value<M>, Value<M>, Extensions<M>>;
export declare function object<T extends AnyObject>(this: void, name: string): ObjectModelBuilder<T, AnyObject, AnyObject, {
named: true;
}>;
declare function _enum<T extends typeof Enum>(this: void, obj: T, name: string): EnumModel<T>;
export { _enum as enum };
export declare function union<MM extends Model[]>(this: void, ...members: MM): UnionModel<MM>;
export declare function getValue<T>(this: void, model: Model<T>): T;
export declare function items<V extends Model>(this: void, model: ArrayModel<V> | OptionalModel<ArrayModel<V>>): Generator<V, undefined, void>;
export declare function withDefaultValue<const M extends Model>(this: void, model: M, defaultValue: Value<M>): M;
export declare function isConstraint<V, N extends string = string, A extends AnyObject = EmptyObject>(this: void, arg: unknown, constraintType: NonAttributedConstraint<V, N, A>): arg is Constraint<V, N, A>;