import { Usage } from "../../constants.js"; import { BufferAttribute, TypedArray } from "../../core/BufferAttribute.js"; import { InterleavedBuffer } from "../../core/InterleavedBuffer.js"; import { InterleavedBufferAttribute } from "../../core/InterleavedBufferAttribute.js"; import InputNode from "../core/InputNode.js"; import NodeBuilder from "../core/NodeBuilder.js"; declare class BufferAttributeNode extends InputNode { readonly isBufferNode: true; bufferType: string | null; bufferStride: number; bufferOffset: number; usage: Usage; instanced: boolean; attribute: BufferAttribute | InterleavedBufferAttribute | null; constructor( value: TypedArray | InterleavedBuffer | BufferAttribute, bufferType?: string | null, bufferStride?: number, bufferOffset?: number, ); getHash(builder: NodeBuilder): string; getNodeType(builder: NodeBuilder): string | null; setup(builder: NodeBuilder): void; generate(builder: NodeBuilder): string | null | undefined; getInputType(): string; setUsage(value: Usage): this; setInstanced(value: boolean): this; } export default BufferAttributeNode; export declare const bufferAttribute: ( array: TypedArray | InterleavedBuffer | BufferAttribute, type?: string | null, stride?: number, offset?: number, ) => import("../tsl/TSLCore.js").ShaderNodeObject; export declare const dynamicBufferAttribute: ( array: TypedArray | InterleavedBuffer | BufferAttribute, type?: string | null, stride?: number, offset?: number, ) => import("../tsl/TSLCore.js").ShaderNodeObject; export declare const instancedBufferAttribute: ( array: TypedArray | InterleavedBuffer | BufferAttribute, type?: string | null, stride?: number, offset?: number, ) => import("../tsl/TSLCore.js").ShaderNodeObject; export declare const instancedDynamicBufferAttribute: ( array: TypedArray | InterleavedBuffer | BufferAttribute, type?: string | null, stride?: number, offset?: number, ) => import("../tsl/TSLCore.js").ShaderNodeObject;