import { DiagnosticDefinition, DiagnosticMessages } from "@typespec/compiler";
export type DiagnosticMessagesMap = {
    [K in keyof typeof diags]: (typeof diags)[K]["messages"];
};
declare const diags: {
    [code: string]: DiagnosticDefinition<DiagnosticMessages>;
};
export declare const $lib: import("@typespec/compiler").TypeSpecLibrary<{
    [x: string]: /*elided*/ any;
}, import("../options.js").CSharpEmitterOptions, never>;
/**
 * Reports a diagnostic. Defined in the core compiler.
 * @beta
 */
export declare const reportDiagnostic: <C extends string | number, M extends keyof {
    [x: string]: /*elided*/ any;
}[C]>(program: import("@typespec/compiler").Program, diag: import("@typespec/compiler").DiagnosticReport<{
    [x: string]: /*elided*/ any;
}, C, M>) => void;
/**
 * Creates a diagnostic. Defined in the core compiler.
 * @beta
 */
export declare const createDiagnostic: <C extends string | number, M extends keyof {
    [x: string]: /*elided*/ any;
}[C]>(diag: import("@typespec/compiler").DiagnosticReport<{
    [x: string]: /*elided*/ any;
}, C, M>) => import("@typespec/compiler").Diagnostic;
/**
 * Gets a tracer. Defined in the core compiler.
 * @beta
 */
export declare const getTracer: (program: import("@typespec/compiler").Program) => import("@typespec/compiler").Tracer;
export {};
//# sourceMappingURL=lib.d.ts.map