/** * One callback registered in the shared avatar animation scheduler. * * @private utility of the avatar rendering system */ type AvatarAnimationListener = (now: number) => void; /** * Registers one avatar animation callback in the shared animation loop. * * Each listener is staggered at registration time so it does not fire on the same animation * frame as the existing listeners, and the shared loop further caps how many listeners run * per frame, keeping the main thread responsive when many avatars are mounted. * * @param avatarAnimationListener Frame callback invoked on every animation frame. * @returns Cleanup function that unregisters the callback. * * @private utility of the avatar rendering system */ export declare function retainAvatarAnimationListener(avatarAnimationListener: AvatarAnimationListener): () => void; export {};