import { Host, Channel, JsonPath } from '@microsoft.azure/autorest-extension-base';
export declare class ModelState<T> {
    service: Host;
    model: T;
    protected documentName: string;
    protected currentPath: JsonPath;
    protected errorCount: number;
    constructor(service: Host, model: T, documentName: string, currentPath?: JsonPath);
    path(...childPath: JsonPath): ModelState<T>;
    checkpoint(): void;
    protected msg(channel: Channel, message: string, key: Array<string>, details: any): void;
    warning(message: string, key: Array<string>, details?: any): void;
    hint(message: string, key: Array<string>, details?: any): void;
    error(message: string, key: Array<string>, details?: any): void;
    fatal(message: string, key: Array<string>, details?: any): void;
    protected output(channel: Channel, message: string, details?: any): void;
    debug(message: string, details: any): void;
    verbose(message: string, details: any): void;
    log(message: string, details: any): void;
}
//# sourceMappingURL=model-state.d.ts.map