armisa-models
Version:
models of armisa!
51 lines (50 loc) • 1.83 kB
TypeScript
interface IBaseEntityProperties {
tableName: string;
fa: string;
en: string | null;
ar: string | null;
sp: string | null;
fr: string | null;
properties: IBasePropertyJson[];
}
interface IBasePropertyJson {
dataType: IBasePropertyDataType;
fieldName: string;
fa: string;
en: string | null;
ar: string | null;
sp: string | null;
fr: string | null;
}
export declare class BaseEntityProperties {
tableName: string;
FA: string;
EN?: string | undefined;
AR?: string | undefined;
SP?: string | undefined;
FR?: string | undefined;
properties: BaseProperty[];
constructor(tableName: string, FA: string, EN?: string | undefined, AR?: string | undefined, SP?: string | undefined, FR?: string | undefined);
private Add;
static buildNew(jsons: IBaseEntityProperties[]): BaseEntityProperties[];
}
type IBasePropertyDataType = 'int' | 'string' | 'dateTime' | 'dateShamsi' | 'float';
export declare class BaseProperty {
dataType: IBasePropertyDataType;
fieldName: string;
FA: string;
EN: string | null;
AR: string | null;
SP: string | null;
FR: string | null;
constructor(dataType: IBasePropertyDataType, fieldName: string, FA: string, EN: string | null, AR: string | null, SP: string | null, FR: string | null);
static buildNew(entityJson: IBasePropertyJson): BaseProperty;
}
export declare class BasePropertyFactory {
getCurrentProperty(entity: BaseEntityProperties | undefined, fieldName: string): BaseProperty | undefined;
getCurrentEntity(tableName: string): BaseEntityProperties | undefined;
entities?: BaseEntityProperties[];
setEntities: (entities: IBaseEntityProperties[]) => void;
static buildNew(): BasePropertyFactory;
}
export {};