import { EntitySchema, SchemaRoot, RelationSchema, FieldSchema, IndexSchema } from 'fusefx-modeldescription'; import { IDataSource } from 'ushell-modulebase'; import { LogicalExpression } from 'fusefx-repositorycontract'; export declare class EntitySchemaService { static getIndexSchema(indexName: string, entitySchema: EntitySchema): IndexSchema | null; static getFields(indexName: string, entitySchema: EntitySchema): FieldSchema[]; static getKnownValues(f: FieldSchema, schemaRoot: SchemaRoot): { value: any; label: string; }[] | undefined; static getKey(er: RelationSchema): import('react').Key | null | undefined; static areRelationsEqual(r1: RelationSchema | null, r2: RelationSchema | null): boolean; static isNumber(fieldType: string): boolean; static getUniversalSearchExpression(entitySchema: EntitySchema, universalSearchText: string): LogicalExpression | null; static getLabelForRelationToForeign(schemaRoot: SchemaRoot, relation: RelationSchema): string; static getLabel(schemaRoot: SchemaRoot, primaryEntityName: string, entity: any): string; static getLabelByEntitySchema(entitySchema: EntitySchema, entity: any): string; static getPrimaryKeyProps(entitySchema: EntitySchema): string[]; static getPrimaryKey(entitySchema: EntitySchema, entity: any): any; static getPrimaryKeyExpression(entitySchema: EntitySchema, primaryKey: any): LogicalExpression; static getRelations(schemaRoot: SchemaRoot, entitySchema: EntitySchema, includeLookups: boolean): RelationSchema[]; static getRelationsByFilter(schemaRoot: SchemaRoot, filter: (r: RelationSchema) => boolean): RelationSchema[]; static getAllLookUps(schemaRoot: SchemaRoot, getDatasource: (en: string) => IDataSource | null, entitySchema: EntitySchema): void; static getHtmlInputType(propertyType: string): "number" | "date" | "checkbox" | "text"; static findEntryWithMatchingIdentity(entities: any[], entity: any, schema: EntitySchema): any; static findIndexWithMatchingIdentity(entities: any[], entity: any, schema: EntitySchema): number; static matchInIdentity(e1: any, e2: any, schema: EntitySchema): boolean; static compareDeep(o1: any, o2: any): boolean; static clone(o: any, entitySchema: EntitySchema): any; static createNewEntity(entitySchema: EntitySchema): any; static getErrors(v: any, required: boolean, inputType: string): string | null; }