import { Path, SortedReadonlyArray } from "./_namespaces/lpc";
import { Project } from "./_namespaces/lpc.server";
export declare enum LogLevel {
    terse = 0,
    normal = 1,
    requestTime = 2,
    verbose = 3
}
export interface Logger {
    close(): void;
    hasLevel(level: LogLevel): boolean;
    loggingEnabled(): boolean;
    perftrc(s: string): void;
    info(s: string): void;
    startGroup(): void;
    endGroup(): void;
    msg(s: string, type?: Msg): void;
    getLogFileName(): string | undefined;
}
export declare enum Msg {
    Err = "Err",
    Info = "Info",
    Perf = "Perf"
}
export type NormalizedPath = string & {
    __normalizedPathTag: any;
};
export declare const emptyArray: SortedReadonlyArray<never>;
export declare function normalizedPathToPath(normalizedPath: NormalizedPath, currentDirectory: string, getCanonicalFileName: (f: string) => string): Path;
export declare function toNormalizedPath(fileName: string): NormalizedPath;
export declare namespace Errors {
    function ThrowNoProject(): never;
    function ThrowProjectLanguageServiceDisabled(): never;
    function ThrowProjectDoesNotContainDocument(fileName: string, project: Project): never;
}
export declare function asNormalizedPath(fileName: string): NormalizedPath;
//# sourceMappingURL=utilitiesPublic.d.ts.map