import { CADFiler } from './CADFiler'; import { CommandHistoryRecord } from './CommandHistoryRecord'; import { Database } from './Database'; import { ISerialize } from './ISerialize'; import { ObjectId } from './ObjectId'; export declare abstract class CADObject { protected _Owner: ObjectId; /** * 用于储存临时数据 */ TempData: any; __CacheBox__: any; __CacheBoard__: any; __CacheSize__: any; __CachePolyline__: any; set Owner(owner: ObjectId); get Owner(): ObjectId; Destroy(): void; GoodBye(): any; /** * 当实体异步更新绘制实体完成后触发这个函数. * Application通过注入的方式得知这个事件,刷新视图显示. */ AsyncUpdated(): void; protected _db: Database; get Db(): Database; SetDefaultDb(db: Database): this; SetOwnerDatabase(db: Database): this; /** * WblockClone 的时候,id是db分配的,此刻我们只需要设置它的db */ SetDatabase(db: Database): void; protected _isErase: boolean; get IsErase(): boolean; Erase(isErase?: boolean): void; objectId: ObjectId; get Id(): ObjectId; ReadFile(file: CADFiler): void; WriteFile(file: CADFiler): void; ApplyPartialUndo(undoData: ISerialize): void; UndoRecord(): CommandHistoryRecord; WriteAllObjectRecord(): boolean; Clone(): this; DeepClone(ownerObject: CADObject, cloneObejct: CADObject, idMaping?: Map, isPrimary?: boolean): this; CopyFrom(obj: CADObject): void; /** * 配合 `@AutoRecord` 使用 * 使用这个方法来覆盖AutoRecord的监听行为. * 这个行为只能用来监听实体添加和实体修改. * 实体删除行为暂时无法监听 * @param setCallback 设置新的实体到数组时的回调函数 */ protected CreateProxyArray(setCallback: (v: any) => void): any[]; } //# sourceMappingURL=CADObject.d.ts.map