@backland/schema
Version:
TypeScript schema declaration and validation library with static type inference
23 lines (22 loc) • 1.19 kB
TypeScript
import { Serializable } from '@backland/utils';
import { FieldType, FieldTypeParser } from './FieldType';
export type MetaFieldDef = {
[K: string]: Serializable;
description?: string;
id: string | null;
implements?: string[];
};
export declare class MetaField extends FieldType<MetaField, 'meta', MetaFieldDef> {
parse: FieldTypeParser<MetaField>;
constructor(def?: MetaFieldDef);
static create: (def?: MetaFieldDef) => MetaField;
toString: () => string;
}
export declare const objectMetaFieldKey = "__dschm__";
export declare function createEmptyMetaField(): MetaField['asFinalFieldDef'];
export declare function cleanMetaField(input: any): any;
export declare function isMetaFieldKey(t: any): t is typeof objectMetaFieldKey;
export declare function isMetaField(t: any, fieldName?: string): t is MetaField['asFinalFieldDef'];
export declare function getObjectDefinitionMetaField(input: Record<string, any>): MetaField['asFinalFieldDef'] | undefined;
export declare function getObjectDefinitionId(definition: Record<string, any>, nullable: true): string | undefined;
export declare function getObjectDefinitionId(definition: Record<string, any>): string;