import { MessageSeverity, IMessageProps, IPropertyStatusMessage, IModelParseContext, IModelType } from "./model.api"; import { ClientProps } from "./model.base"; export declare class ModelParseMessage implements IPropertyStatusMessage { private _property; private _msg; private _code; private _qualifiers; private _props; private _severity; constructor(severity: MessageSeverity, property: string, msg: string, code: string, props: IMessageProps, qualifiers?: string[]); get property(): string; get msg(): string; get code(): string; get qualifiers(): string[]; get props(): any[]; get severity(): MessageSeverity; get isError(): boolean; } export declare class ObjectTraversal { constructor(obj: any); get top(): any; descend(key: string): void; ascend(): void; private _top; private _stack; private _keyPath; } export declare class ParallelTraversal { constructor(obj: any[]); get top(): any[]; get topDefined(): any; get topNonNull(): any; descend(key: string): void; ascend(): void; prependTop(t: any): void; appendTop(t: any): void; _updateTop(obj: any[]): void; private _top; private _topDefined; private _topNonNull; private _stack; } export declare class ModelParseContext extends ClientProps implements IModelParseContext { constructor(value: any, type: IModelType, required?: boolean, allowConversion?: boolean, clientProps?: any); validate(): boolean; parse(): any; currentValue(): any; currentType(): IModelType; currentRequired(): boolean; currentKeyPath(): string[]; pushItem(key: string, required?: boolean, type?: IModelType): void; popItem(): void; subContext(): IModelParseContext; hasMessagesForCurrentValue(): boolean; addWarning(msg: string, code: string): void; addError(msg: string, code: string): void; addWarningEx(msg: string, code: string, props: IMessageProps): void; addErrorEx(msg: string, code: string, props: IMessageProps): void; addMessage(severity: MessageSeverity | boolean, msg: string, code: string): void; addMessageEx(severity: MessageSeverity | boolean, msg: string, code: string, props: IMessageProps): void; addMessages(msgs: IPropertyStatusMessage[]): void; _removeMessages(filter: (m: IPropertyStatusMessage) => boolean): void; get messages(): IPropertyStatusMessage[]; get warnings(): IPropertyStatusMessage[]; get errors(): IPropertyStatusMessage[]; get allowConversion(): boolean; private _valueTraversal; private _currentType; private _currentRequired; private _allowConversion; private _requiredStack; private _typeStack; private _keyPath; private _messages; }