typegpu
Version:
A thin layer between JS and WebGPU/WGSL that improves development experience and allows for faster iteration.
14 lines (13 loc) • 1.01 kB
TypeScript
import { type ISerialInput, type ISerialOutput } from 'typed-binary';
import type { Infer, InferInput } from '../shared/repr.ts';
import type * as wgsl from './wgslTypes.ts';
import { type BaseData } from './wgslTypes.ts';
import type { BufferWriteOptions } from '../core/buffer/buffer.ts';
export declare function writeData<TData extends wgsl.BaseData>(output: ISerialOutput, schema: TData, value: Infer<TData>): void;
export declare function readData<TData extends wgsl.BaseData>(input: ISerialInput, schema: TData): Infer<TData>;
export declare function calculateOffsets<T extends BaseData>(options: BufferWriteOptions | undefined, schema: T, data: InferInput<T> | ArrayBuffer): {
startOffset: number;
endOffset: number;
};
export declare function writeToArrayBuffer<T extends BaseData>(buffer: ArrayBuffer, schema: T, data: InferInput<T> | ArrayBuffer, options?: BufferWriteOptions): void;
export declare function readFromArrayBuffer<T extends BaseData>(buffer: ArrayBuffer, schema: T): Infer<T>;