import { Diagnostic, Program, Type } from "@typespec/compiler";
import { SpawnOptions } from "child_process";
export declare function trace(program: Program, msg: string): void;
export declare function pascalCase(name: string): string;
export declare function getNamespace(type: Type | undefined): string | undefined;
export declare function stringArrayContainsIgnoreCase(stringList: string[], str: string): boolean;
export declare function removeClientSuffix(clientName: string): string;
export type SpawnReturns = {
    stdout: string;
    stderr: string;
};
export declare class SpawnError extends Error {
    stdout: string;
    stderr: string;
    constructor(message: string, stdout: string, stderr: string);
}
export declare class DiagnosticError extends Error {
    diagnostic: Diagnostic;
    constructor(diagnostic: Diagnostic);
}
export declare function spawnAsync(command: string, args: readonly string[], options: SpawnOptions): Promise<SpawnReturns>;
/**
 * Converts the value of an option to a boolean.
 *
 * The function is useful when the option is provided in typespec command line, and the option is not explicitly documented in the EmitterOptionsSchema.
 *
 * @param option The option flag.
 * @returns the boolean value of the option. `undefined` if the option is not set
 */
export declare function optionBoolean(option: boolean | string | undefined): boolean | undefined;
export declare function escapeJavaKeywords(name: string, suffix: string): string;
//# sourceMappingURL=utils.d.ts.map