type ReactSmoothStyle = object; /** * Represents a single item in the ReactSmoothQueue. * The item can be: * - A number representing a delay in milliseconds. * - An object representing a style change * - A function to be executed */ type ReactSmoothQueueItem = number | ReactSmoothStyle | (() => void); export type ReactSmoothQueue = ReadonlyArray; export type HandleChangeFn = (currentStyle: ReactSmoothStyle) => null | void; export type AnimationManager = { stop: () => void; start: (style: ReactSmoothQueue) => void; subscribe: (handleChange: (style: ReactSmoothStyle) => void) => () => void; }; export type SetTimeoutFn = (callback: () => void, timeout?: number) => void; export declare function createAnimateManager(setTimeoutDi?: SetTimeoutFn): AnimationManager; export {};