Skip to content

API Reference / @gtkx/animated / useSpring

Function: useSpring()

Call Signature

useSpring<Props>(props, deps?): [Props] extends [Any] ? Lookup<any> : [object] extends [Props] ? Lookup<any> : { [P in string | number | symbol]: { [P in string | number | symbol]: (Props extends { from: From } ? (From extends () => ... ? ReturnType<(...)> : ObjectType<(...)>) | (((...) & (...)) extends never ? ToValues<(...), (...)> : RawValues<(...)>) : (TransitionKey & keyof (...)) extends never ? ToValues<Props, true> : RawValues<Omit<(...), (...)>>) extends U ? P extends keyof U ? U[P] : never : never }[P] } extends State ? State extends Lookup<any> ? [SpringValues<State>, SpringRef<State>] : never : never

Defined in: node_modules/.pnpm/@react-spring+core@10.1.2_react@19.2.8/node_modules/@react-spring/core/dist/react-spring_core.modern.d.mts:1077

The props function is only called on the first render, unless deps change (when defined). State is inferred from forward props.

Type Parameters

Props

Props extends object

Parameters

props

Function | (() => Remap<ControllerUpdate<Lookup<any>, undefined> & { ref?: SpringRef<Lookup<any>> | undefined; }> | Props & { [P in string | number | symbol]: (Pick<Props, Exclude<keyof Props, InvalidKeys<Props, UseSpringProps<(...)>>>> & { [K in string | number | symbol]: never })[P] })

deps?

readonly any[]

Returns

[Props] extends [Any] ? Lookup<any> : [object] extends [Props] ? Lookup<any> : { [P in string | number | symbol]: { [P in string | number | symbol]: (Props extends { from: From } ? (From extends () => ... ? ReturnType<(...)> : ObjectType<(...)>) | (((...) & (...)) extends never ? ToValues<(...), (...)> : RawValues<(...)>) : (TransitionKey & keyof (...)) extends never ? ToValues<Props, true> : RawValues<Omit<(...), (...)>>) extends U ? P extends keyof U ? U[P] : never : never }[P] } extends State ? State extends Lookup<any> ? [SpringValues<State>, SpringRef<State>] : never : never

Call Signature

useSpring<Props>(props): SpringValues<[Props] extends [Any] ? Lookup<any> : [object] extends [Props] ? Lookup<any> : { [P in string | number | symbol]: { [P in string | number | symbol]: (Props extends { from: From } ? (From extends () => ... ? ReturnType<(...)> : ObjectType<(...)>) | (((...) & (...)) extends never ? ToValues<(...), (...)> : RawValues<(...)>) : (TransitionKey & keyof (...)) extends never ? ToValues<Props, true> : RawValues<Omit<(...), (...)>>) extends U ? P extends keyof U ? U[P] : never : never }[P] }>

Defined in: node_modules/.pnpm/@react-spring+core@10.1.2_react@19.2.8/node_modules/@react-spring/core/dist/react-spring_core.modern.d.mts:1081

Updated on every render, with state inferred from forward props.

Type Parameters

Props

Props extends object

Parameters

props

Remap<ControllerUpdate<Lookup<any>, undefined> & { ref?: SpringRef<Lookup<any>> | undefined; }> | Props & { [P in string | number | symbol]: (Pick<Props, Exclude<keyof Props, InvalidKeys<Props, UseSpringProps<Props>>>> & { [K in string | number | symbol]: never })[P] }

Returns

SpringValues<[Props] extends [Any] ? Lookup<any> : [object] extends [Props] ? Lookup<any> : { [P in string | number | symbol]: { [P in string | number | symbol]: (Props extends { from: From } ? (From extends () => ... ? ReturnType<(...)> : ObjectType<(...)>) | (((...) & (...)) extends never ? ToValues<(...), (...)> : RawValues<(...)>) : (TransitionKey & keyof (...)) extends never ? ToValues<Props, true> : RawValues<Omit<(...), (...)>>) extends U ? P extends keyof U ? U[P] : never : never }[P] }>

Call Signature

useSpring<Props>(props, deps): [Props] extends [Any] ? Lookup<any> : [object] extends [Props] ? Lookup<any> : { [P in string | number | symbol]: { [P in string | number | symbol]: (Props extends { from: From } ? (From extends () => ... ? ReturnType<(...)> : ObjectType<(...)>) | (((...) & (...)) extends never ? ToValues<(...), (...)> : RawValues<(...)>) : (TransitionKey & keyof (...)) extends never ? ToValues<Props, true> : RawValues<Omit<(...), (...)>>) extends U ? P extends keyof U ? U[P] : never : never }[P] } extends State ? State extends Lookup<any> ? [SpringValues<State>, SpringRef<State>] : never : never

Defined in: node_modules/.pnpm/@react-spring+core@10.1.2_react@19.2.8/node_modules/@react-spring/core/dist/react-spring_core.modern.d.mts:1085

Updated only when deps change, with state inferred from forward props.

Type Parameters

Props

Props extends object

Parameters

props

Remap<ControllerUpdate<Lookup<any>, undefined> & { ref?: SpringRef<Lookup<any>> | undefined; }> | Props & { [P in string | number | symbol]: (Pick<Props, Exclude<keyof Props, InvalidKeys<Props, UseSpringProps<Props>>>> & { [K in string | number | symbol]: never })[P] }

deps

readonly any[] | undefined

Returns

[Props] extends [Any] ? Lookup<any> : [object] extends [Props] ? Lookup<any> : { [P in string | number | symbol]: { [P in string | number | symbol]: (Props extends { from: From } ? (From extends () => ... ? ReturnType<(...)> : ObjectType<(...)>) | (((...) & (...)) extends never ? ToValues<(...), (...)> : RawValues<(...)>) : (TransitionKey & keyof (...)) extends never ? ToValues<Props, true> : RawValues<Omit<(...), (...)>>) extends U ? P extends keyof U ? U[P] : never : never }[P] } extends State ? State extends Lookup<any> ? [SpringValues<State>, SpringRef<State>] : never : never

Released under the MPL-2.0 License.