import { type RefObject } from 'react'; type GsapCallable = (...args: unknown[]) => unknown; type GsapContextLike = { add(methodName: string, func: GsapCallable, scope?: Element | string | object): GsapCallable; add(func: T, scope?: Element | string | object): ReturnType; ignore(func: GsapCallable): void; kill(revert?: boolean): void; revert(config?: object): void; clear(): void; isReverted: boolean; }; type GsapCleanup = () => void; /** * Creates a GSAP context scoped to the given ref. * All animations created inside the callback are automatically * reverted on unmount — preventing DOM leak bugs. */ declare function useGsapContext(scope: RefObject, callback: (ctx: GsapContextLike) => void | GsapCleanup, deps?: unknown[]): RefObject; export { useGsapContext }; export type { GsapContextLike };