UNPKG

@textbus/core

Version:

Textbus is a rich text editor and framework that is highly customizable and extensible to achieve rich wysiwyg effects.

43 lines (42 loc) 1.36 kB
import { Observable } from '@tanbo/stream'; import { Action, Operation } from '../model/types'; import { Component } from '../model/component'; import { Model } from './observe'; export type Paths = Array<string | number>; /** * 用来标识数据模型的数据变化 */ export declare class ChangeMarker { host: object; onForceChange: Observable<void>; onChange: Observable<Operation>; onSelfChange: Observable<Action[]>; get irrevocableUpdate(): boolean; get dirty(): boolean; get changed(): boolean; parentModel: Model | null; private detachCallbacks; private _irrevocableUpdate; private _dirty; private _changed; private changeEvent; private selfChangeEvent; private childComponentRemovedEvent; private forceChangeEvent; constructor(host: object); addDetachCallback(callback: () => void): void; getPaths(): Paths; forceMarkDirtied(source?: Component<any>): void; forceMarkChanged(source?: Component<any>): void; markAsDirtied(operation: Operation): void; markAsChanged(operation: Operation): void; rendered(): void; reset(): void; detach(): void; private getPathInParent; } /** * 在回调函数内改变组件状态时,将更改的状态标记为不可撤回的 * @param fn */ export declare function irrevocableUpdate(fn: () => void): void;