devexpress-richedit
Version:
DevExpress Rich Text Editor is an advanced word-processing tool designed for working with rich text documents.
43 lines (42 loc) • 1.98 kB
TypeScript
import { FixedInterval } from '@devexpress/utils/lib/intervals/fixed';
import { SubDocument } from '../sub-document';
import { FieldParameter } from './parsers/field-code-parser';
export type FieldRequestHandler = (fieldRequestManager: FieldRequestManager) => void;
export declare abstract class FieldRequestManager {
private static fieldId;
protected activeRecord: number;
protected updateMap: Record<number, Record<number, FieldRequestData>>;
protected getSubDocumentData(subDocument: SubDocument): Record<number, FieldRequestData>;
clear(subDocument: SubDocument): void;
add(subDocument: SubDocument, data: FieldRequestData): number;
checkResponse(subDocument: SubDocument, response: any): void;
abstract sendRequest(subDocument: SubDocument, activeRecord: number, immediateSendRequest: boolean): any;
abstract forceSendDelayedRequests(): any;
requestAsJson(subDocument: SubDocument): any;
}
export declare class TocFieldRequestManager extends FieldRequestManager {
sendRequest(_subDocument: SubDocument, _activeRecord: number, _immediateSendRequest: boolean): void;
forceSendDelayedRequests(): void;
}
export declare abstract class FieldRequestData {
abstract get serverUpdateFieldType(): ServerUpdateFieldType;
abstract asJson(): any;
}
export declare class FieldDocVariableRequestData extends FieldRequestData {
get serverUpdateFieldType(): ServerUpdateFieldType;
fieldName: string;
parameters: FieldParameter[];
fieldInterval: FixedInterval;
constructor(fieldInterval: FixedInterval, fieldName: string, parameters: FieldParameter[]);
asJson(): any;
}
export declare class FieldMailMergeRequestData extends FieldRequestData {
get serverUpdateFieldType(): ServerUpdateFieldType;
fieldName: string;
constructor(fieldName: string);
asJson(): any;
}
export declare enum ServerUpdateFieldType {
DocVariable = 1,
MergeField = 2
}