import { type Material, type MaterialInstance, type RenderShaderProgram } from "@aura3d/rendering";
export interface MaterialDiagnosticReport {
    readonly materialName: string;
    readonly shaderLabel: string;
    readonly valid: boolean;
    readonly diagnostics: readonly string[];
    readonly uniforms: readonly string[];
}
export declare class MaterialDiagnostics {
    inspect(material: Material | MaterialInstance, shader: RenderShaderProgram): MaterialDiagnosticReport;
    assertValid(report: MaterialDiagnosticReport): void;
}
export declare class MaterialDiagnosticError extends Error {
    readonly report: MaterialDiagnosticReport;
    constructor(message: string, report: MaterialDiagnosticReport);
}
//# sourceMappingURL=MaterialDiagnostics.d.ts.map