UNPKG

@imbricate/core

Version:

Imbricate Core, Notebook for Engineers

36 lines (35 loc) 1.42 kB
/** * @author WMXPY * @namespace TextManager * @description Text Manager */ import { ImbricateTextAuditOptions } from "../text/definition"; import { IMBRICATE_TEXT_MANAGER_FEATURE } from "./feature"; import { ImbricateTextManagerCreateTextOutcome, ImbricateTextManagerGetTextOutcome } from "./outcome"; export interface IImbricateTextManager { /** * Supported features of the text manager */ readonly supportedFeatures: IMBRICATE_TEXT_MANAGER_FEATURE[]; /** * Get the text object from the origin * * @param uniqueIdentifier unique identifier of the text * * @returns a promise of the text object, null if not found * Symbol: S_TextManager_GetText_NotFound - if the text is not found */ getText(textUniqueIdentifier: string): PromiseLike<ImbricateTextManagerGetTextOutcome>; /** * Create a new text object in the origin * Text object is immutable, once created, it cannot be changed * Patch a new text object if you want to change the content * * @param content content of the text * @param auditOptions audit options of the text * * @returns a promise of the text object * Symbol: S_TextManager_CreateText_IdentifierDuplicated - if the identifier is duplicated */ createText(content: string, auditOptions?: ImbricateTextAuditOptions): PromiseLike<ImbricateTextManagerCreateTextOutcome>; }