UNPKG

@eclipse-scout/core

Version:
101 lines 3.92 kB
import { EnumObject, InitModelOf, ObjectOrModel, ObjectWithType, Predicate, StatusModel } from '../index'; export declare class Status implements StatusModel, ObjectWithType { model: StatusModel; objectType: string; message: string; severity: StatusSeverity; iconId: string; code: number; children: Status[]; deletable: boolean; uiState: string; constructor(model?: InitModelOf<Status>); static Severity: { readonly OK: 1; readonly INFO: 256; readonly WARNING: 65536; readonly ERROR: 16777216; }; static SEVERITY_CSS_CLASSES: string; cssClass(): string; /** * @returns true if severity is OK or INFO, false if severity is WARNING or ERROR. */ isValid(): boolean; isError(): boolean; isWarning(): boolean; isInfo(): boolean; isOk(): boolean; /** * @returns status including all children recursively as flat array. */ asFlatList(): Status[]; /** * @returns a clone of this Status instance. */ clone(): Status; equals(o: any): boolean; /** * Note: we cannot 'overload' this function, because predicates and status-types are both functions, * thus we cannot distinguish them by type or instanceof. * * @returns whether or not this status contains a child with the give type */ containsStatus(statusType: abstract new () => Status): boolean; containsStatusByPredicate(predicate: Predicate<Status>): boolean; addStatus(status: Status): void; /** * Removes all children of the given type from this status. The type is checked by inheritance. */ removeAllStatus(statusType: abstract new () => Status): void; removeAllStatusByPredicate(predicate: Predicate<Status>): void; protected _updateProperties(): void; /** * @returns whether this status has children (= multi status) */ hasChildren(): boolean; /** * In some cases we need to transform an error status without children to a multi-status with children. * @returns If this instance already has children, a clone of the instance. Otherwise, a new instance with the current instance as first child. */ ensureChildren(): Status; /** * Null-safe static clone method. */ static clone(original: Status): Status; static cssClassForSeverity(severity: StatusSeverity): string; static animateStatusMessage($status: JQuery, message: string): void; /** * @returns a {@link Status} object with severity OK. */ static ok(model?: StatusModel | string): Status; /** * @returns a {@link Status} object with severity INFO. */ static info(model?: StatusModel | string): Status; /** * @returns a {@link Status} object with severity WARNING. */ static warning(model?: StatusModel | string): Status; /** * @returns a {@link Status} object with severity ERROR. */ static error(model?: StatusModel | string): Status; static ensureModel(model: StatusModel | string, severity: StatusSeverity | StatusSeverityNames): StatusModel; /** * @returns all {@link Status} objects as flat array (recursively goes through the status hierarchy) */ static asFlatList(status: Status): Status[]; /** * Returns a constructor function for the given class-name. * * @returns Status constructor */ static classForName(className: StatusType): new (model?: StatusModel) => Status; static ensure<T extends Status = Status>(status: StatusOrModel<T>): T; } export type StatusSeverity = EnumObject<typeof Status.Severity>; export type StatusSeverityNames = keyof typeof Status.Severity; export type StatusOrModel<T extends Status = Status> = ObjectOrModel<T>; export type StatusType = 'Status' | 'DefaultStatus' | 'ParsingFailedStatus' | 'ValidationFailedStatus'; //# sourceMappingURL=Status.d.ts.map