export class ShaderNode extends ExecutableNode {
    /**
     * Whether node writes particle state or not
     * @type {boolean}
     */
    writes: boolean;
    /**
     *
     * @type {FunctionModuleReference[]}
     */
    dependencies: FunctionModuleReference[];
    /**
     *
     * @param {FunctionModuleReference} reference
     * @returns {boolean}
     */
    hasModuleDependency(reference: FunctionModuleReference): boolean;
    /**
     * @param {FunctionModuleReference} reference
     * @returns {boolean}
     */
    addModuleDependency(reference: FunctionModuleReference): boolean;
    /**
     *
     * @param {NodeInstance} instance
     * @param {LineBuilder} output
     * @param {CodeContext} context
     * @param {string[]} port_variables
     */
    generate_code(instance: NodeInstance, output: LineBuilder, context: CodeContext, port_variables: string[]): void;
    /**
     * @readonly
     * @type {boolean}
     */
    readonly isShaderNode: boolean;
}
import { ExecutableNode } from "../../../../../../../model/game/story/node-graph/ExecutableNode.js";
//# sourceMappingURL=ShaderNode.d.ts.map