@motion-core/motion-gpu
Version:
Framework-agnostic WebGPU runtime for fullscreen WGSL shaders with explicit Svelte, React, and Vue adapter entrypoints.
26 lines • 912 B
TypeScript
/**
* Minimal subscribe contract used by MotionGPU core.
*/
export interface Subscribable<T> {
subscribe: (run: (value: T) => void) => () => void;
}
/**
* Readable value with synchronous access to the latest value.
*/
export interface CurrentReadable<T> extends Subscribable<T> {
readonly current: T;
}
/**
* Writable extension of {@link CurrentReadable}.
*/
export interface CurrentWritable<T> extends CurrentReadable<T> {
set: (value: T) => void;
update: (updater: (value: T) => T) => void;
}
/**
* Creates a writable value with immediate subscription semantics.
* Accepted writes are delivered FIFO to a subscriber snapshot. `onChange` runs
* after that snapshot for each value, preserving the original callback order.
*/
export declare function createCurrentWritable<T>(initialValue: T, onChange?: (value: T) => void): CurrentWritable<T>;
//# sourceMappingURL=current-value.d.ts.map