UNPKG

@fluent-form/core

Version:

An Angular dynamic forms library powered by Fluent API and JSON.

45 lines (44 loc) 2.55 kB
import { type ValidatorFn } from '@angular/forms'; import type { AbstractBranchSchema, AbstractComponentContainerSchema, AbstractComponentWrapperSchema, AbstractControlContainerSchema, AbstractControlSchema, AbstractControlWrapperSchema, AbstractSchema, SchemaKey, SingleSchemaKey } from '../schemas'; import { type SchemaLike, SchemaType } from '../schemas/interfaces'; import type { Indexable } from '../types'; import * as i0 from "@angular/core"; export declare class SchemaUtil { private readonly schemaMap; private readonly schemaPatchers; patch<T extends Indexable<AbstractSchema>>(schema: T): T; /** * Filter out top-level control/control container schemas. */ filterControls(schemas: Indexable<AbstractSchema>[]): (AbstractControlSchema<SchemaKey, any> | AbstractControlContainerSchema<SingleSchemaKey>)[]; isControlGroup(schema: SchemaLike): schema is AbstractControlContainerSchema; isControlArray(schema: SchemaLike): schema is AbstractControlContainerSchema; isControlContainer(schema: SchemaLike): schema is AbstractControlContainerSchema; isControlWrapper(schema: SchemaLike): schema is AbstractControlWrapperSchema; isControl(schema: SchemaLike): schema is AbstractControlSchema; isComponentContainer(schema: SchemaLike): schema is AbstractComponentContainerSchema; isComponentWrapper(schema: SchemaLike): schema is AbstractComponentWrapperSchema; isComponent(schema: SchemaLike): schema is AbstractSchema; /** * Whether it is a multi-field schema. */ isMultiKeySchema(schema: SchemaLike): boolean; /** * Whether it is a path field schema. */ isPathKeySchema(schema: SchemaLike): boolean; /** * Non-control schema, indicating that it or its child nodes * do not contain any control schemas. */ isNonControl(schema: SchemaLike): schema is AbstractSchema; typeOf(schema: SchemaLike): SchemaType | undefined; validatorsOf(schema: AbstractControlSchema): ValidatorFn[]; parsePathKey(key: string): string[]; norimalizePaths(paths: SingleSchemaKey | SchemaKey[]): string[]; find(schema: Indexable<AbstractBranchSchema>, key: SingleSchemaKey): AbstractSchema | null; find(schema: Indexable<AbstractBranchSchema>, key: SchemaKey[]): AbstractSchema | null; find(schema: Indexable<AbstractBranchSchema>, paths: SingleSchemaKey | SchemaKey[]): AbstractSchema | null; static ɵfac: i0.ɵɵFactoryDeclaration<SchemaUtil, never>; static ɵprov: i0.ɵɵInjectableDeclaration<SchemaUtil>; }