UNPKG

@xmobitea/gn-typescript-client

Version:

GearN Typescript Client SDK by XmobiTea (Pro)

78 lines (77 loc) 3.12 kB
import "reflect-metadata"; import { GNArray, GNHashtable } from "./../common/GNData"; import { AbstractConstructor, Constructor, GNObjectFieldMetadata, GNObjectMetadata } from "./GNMetadata"; export declare const initGNObjectMetadata: <T extends GNObjectMetadata>(prototype: any) => T; export declare const initGNObjectFieldMetadata: <T extends GNObjectFieldMetadata>(prototype: any, propertyKey: string) => T; export declare const getGNObjectMetadata: <T extends GNObjectMetadata>(obj: AbstractConstructor<any>) => T | undefined; export declare const setGNObjectMetadata: <T extends GNObjectMetadata>(obj: AbstractConstructor<any>, metadata: T) => void; export declare const getTableName: (model: Constructor<any>) => string; export interface GNEnhancedObjectFieldMetadata extends GNObjectFieldMetadata { code: string; isOptional: boolean; gnFieldType: GNFieldDataType; defaultValue: any; activeConditionValid: boolean; mustNonNull?: boolean; minLength?: number; maxLength?: number; minValue?: number; maxValue?: number; mustInt?: boolean; } export declare enum GNFieldDataType { Other = 0, Number = 1, String = 2, Boolean = 3, GNHashtable = 4, GNArray = 5 } export interface GNEnhancedObjectMetadata extends GNObjectMetadata { fields: GNEnhancedObjectFieldMetadata[]; } interface DataMemberBaseArgs { code: string; isOptional?: boolean; defaultValue?: any; } interface DataMemberArgs extends DataMemberBaseArgs { gnFieldType?: GNFieldDataType; } interface OtherDataMemberArgs extends DataMemberBaseArgs { } interface StringDataMemberArgs extends OtherDataMemberArgs { defaultValue?: string; mustNonNull?: boolean; minLength?: number; maxLength?: number; } interface BooleanDataMemberArgs extends OtherDataMemberArgs { defaultValue?: boolean; } interface NumberDataMemberArgs extends OtherDataMemberArgs { defaultValue?: number; minValue?: number; maxValue?: number; mustInt?: boolean; } interface GNHashtableDataMemberArgs extends OtherDataMemberArgs { defaultValue?: GNHashtable; mustNonNull?: boolean; minLength?: number; maxLength?: number; } interface GNArrayDataMemberArgs extends OtherDataMemberArgs { defaultValue?: GNArray; mustNonNull?: boolean; minLength?: number; maxLength?: number; elementCls?: new (...args: any[]) => any; } export declare const DataMember: (args: DataMemberArgs) => (prototype: any, propertyKey: string) => void; export declare const StringDataMember: (args: StringDataMemberArgs) => (prototype: any, propertyKey: string) => void; export declare const BooleanDataMember: (args: BooleanDataMemberArgs) => (prototype: any, propertyKey: string) => void; export declare const GNHashtableDataMember: (args: GNHashtableDataMemberArgs) => (prototype: any, propertyKey: string) => void; export declare const GNArrayDataMember: (args: GNArrayDataMemberArgs) => (prototype: any, propertyKey: string) => void; export declare const NumberDataMember: (args: NumberDataMemberArgs) => (prototype: any, propertyKey: string) => void; export {};