UNPKG

shyft

Version:

Model driven GraphQL API framework

33 lines (32 loc) 1.23 kB
import { ViewEntity } from '..'; import { Entity } from '../engine/entity/Entity'; interface Data { [key: string]: unknown; } export interface RegistryEntityAttribute { fieldName: string; fieldNameI18n: string; fieldNameI18nJson: string; } export interface RegistryEntityAttributes { [key: string]: RegistryEntityAttribute; } export interface RegistryEntity { entity: Entity | ViewEntity; typeName: string; typeNamePlural: string; typeNamePascalCase: string; typeNamePluralPascalCase: string; attributes: RegistryEntityAttributes; dataShaper: (data: Data) => Data; dataSetShaper: (set: Data[]) => Data[]; reverseDataShaper: (data: Data) => Data; } export interface Registry { [key: string]: RegistryEntity; } export declare const registry: Registry; export declare const registerEntity: ({ entity, typeName, typeNamePlural, typeNamePascalCase, typeNamePluralPascalCase, attributes, dataShaper, dataSetShaper, reverseDataShaper, }: RegistryEntity) => void; export declare const getRegisteredEntity: (entityName: string) => RegistryEntity; export declare const getRegisteredEntityAttribute: (entityName: string, attributeName: string) => RegistryEntityAttribute; export {};