export type ShaderGraphValueType = "float" | "vec2" | "vec3" | "vec4" | "color" | "texture2d" | "surface";
export interface ShaderGraphPort {
    readonly name: string;
    readonly type: ShaderGraphValueType;
    readonly required?: boolean;
    readonly defaultValue?: number | readonly number[] | string;
}
export interface ShaderGraphNode {
    readonly id: string;
    readonly type: string;
    readonly category: "Math" | "Vector" | "Texture" | "UV" | "Color" | "PBR" | "Utility";
    readonly inputs: readonly ShaderGraphPort[];
    readonly outputs: readonly ShaderGraphPort[];
}
export interface ShaderGraphEdge {
    readonly id: string;
    readonly from: {
        readonly nodeId: string;
        readonly output: string;
    };
    readonly to: {
        readonly nodeId: string;
        readonly input: string;
    };
}
export interface ShaderGraphDiagnostic {
    readonly severity: "error" | "warning" | "info";
    readonly message: string;
    readonly nodeId?: string;
    readonly edgeId?: string;
    readonly port?: string;
}
export interface ShaderGraphFixture {
    readonly id: "external-parity-old-branch-shader-graph-fixture";
    readonly source: "origin-master-shader-graph-adapted";
    readonly sourceFiles: readonly [
        "origin/master:src/shaders/graph/ShaderGraph.ts",
        "origin/master:src/shaders/graph/NodeLibrary.ts",
        "origin/master:src/shaders/graph/GraphValidator.ts",
        "origin/master:src/shaders/graph/GraphSerializer.ts",
        "origin/master:src/shaders/graph/ShaderNode.ts"
    ];
    readonly nodes: readonly ShaderGraphNode[];
    readonly edges: readonly ShaderGraphEdge[];
    readonly validation: {
        readonly valid: boolean;
        readonly outputNodePresent: boolean;
        readonly acyclic: boolean;
        readonly connectedRequiredInputs: number;
        readonly typedConnections: number;
        readonly warnings: readonly ShaderGraphDiagnostic[];
        readonly errors: readonly ShaderGraphDiagnostic[];
    };
    readonly codegen: {
        readonly targets: readonly ["glsl", "wgsl"];
        readonly uniformCount: number;
        readonly textureBindingCount: number;
        readonly generatedExpressionCount: number;
        readonly glslHash: string;
        readonly wgslHash: string;
        readonly previewFragmentLines: readonly string[];
    };
    readonly categories: readonly string[];
    readonly blockedClaims: readonly string[];
    readonly hash: string;
    readonly claimBoundary: string;
}
export declare function createOldBranchShaderGraphFixture(): ShaderGraphFixture;
//# sourceMappingURL=ShaderGraphModel.d.ts.map