import { ColumnConfig } from "./orm"; export default class Schema { id: string; /** * 创建时间 */ createAt: Date; /** * 更新时间 */ updateAt: Date; constructor(data?: { [key: string]: any; }); /** * 补丁, 补充内容的缺失字段, 填充默认值, * 主要应用在数据入库阶段 * @param object */ patch(object?: { [key: string]: any; }): this; /** * schema, 清除非定义字段 * @param object * @returns */ reduce(object?: { [key: string]: any; }): this; /** * 字段是否处理xss脚本, 默认都有, 不需要的话,要在@Column({xss: false}) 指定 * @param fieldName * @returns */ /** * 是否有定义自定义列, 在ts模式下会有 * @returns */ hasColumns(): boolean; /** * 是否是定义的字段 * @param name * @returns */ getColumn(name: string): ColumnConfig; getColumns(): { [key: string]: ColumnConfig; }; /** * 是不是列 * @param name * @returns */ isColumn(name: string): boolean; /** * 定义字段列表 */ getFields(): string[]; valid(): boolean; /** * 获取列默认值 * @param column * @returns */ getDefaultValue(column: ColumnConfig): any; toColumnValue(field: string, value: any): any; updateColumns(updateData: { [Key: string]: any; }): void; updateColumn(field: string, value: any): any; }