@studiometa/js-toolkit
Version:
A set of useful little bits of JavaScript to boost your project! 🚀
28 lines (27 loc) • 827 B
TypeScript
import type { ServiceInterface } from './AbstractService.js';
import { AbstractService } from './AbstractService.js';
export interface RafServiceProps {
time: DOMHighResTimeStamp;
delta: number;
}
export type RafServiceInterface = ServiceInterface<RafServiceProps>;
export declare class RafService extends AbstractService<RafServiceProps> {
/**
* @private
*/
isTicking: boolean;
/**
* @private
*/
scheduler: Record<"read" | "write" | "afterWrite", (fn: () => unknown) => void>;
props: RafServiceProps;
trigger(props: RafServiceProps): void;
loop(): void;
init(): void;
kill(): void;
}
/**
* Use the RequestAnimationFrame (raf) service.
* @link https://js-toolkit.studiometa.dev/api/services/useRaf.html
*/
export declare function useRaf(): RafServiceInterface;