
Security News
Next.js Patches Critical Middleware Vulnerability (CVE-2025-29927)
Next.js has patched a critical vulnerability (CVE-2025-29927) that allowed attackers to bypass middleware-based authorization checks in self-hosted apps.
@types/hoist-non-react-statics
Advanced tools
TypeScript definitions for hoist-non-react-statics
The @types/hoist-non-react-statics package provides TypeScript type definitions for the hoist-non-react-statics package. This is useful for TypeScript projects that use hoist-non-react-statics to copy non-react specific statics from a child component to a parent component. It helps in maintaining type safety and IntelliSense in IDEs for projects that hoist statics in React components.
Type Definitions for Hoisting Statics
This code demonstrates how to use @types/hoist-non-react-statics for adding TypeScript type definitions when hoisting non-react statics from a base component to a wrapped component. It ensures that the static methods and properties are correctly typed and recognized by TypeScript.
import hoistNonReactStatics from 'hoist-non-react-statics';
import React from 'react';
class BaseComponent extends React.Component {}
class WrappedComponent extends React.Component {}
hoistNonReactStatics(WrappedComponent, BaseComponent);
This is the JavaScript library that @types/hoist-non-react-statics provides types for. It copies non-react specific statics from a child component to a parent component. While it performs the actual functionality, @types/hoist-non-react-statics only provides type definitions and does not implement any functionality.
npm install --save @types/hoist-non-react-statics
This package contains type definitions for hoist-non-react-statics (https://github.com/mridgway/hoist-non-react-statics#readme).
Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/hoist-non-react-statics.
import * as React from "react";
interface REACT_STATICS {
childContextTypes: true;
contextType: true;
contextTypes: true;
defaultProps: true;
displayName: true;
getDefaultProps: true;
getDerivedStateFromError: true;
getDerivedStateFromProps: true;
mixins: true;
propTypes: true;
type: true;
}
interface KNOWN_STATICS {
name: true;
length: true;
prototype: true;
caller: true;
callee: true;
arguments: true;
arity: true;
}
interface MEMO_STATICS {
"$$typeof": true;
compare: true;
defaultProps: true;
displayName: true;
propTypes: true;
type: true;
}
interface FORWARD_REF_STATICS {
"$$typeof": true;
render: true;
defaultProps: true;
displayName: true;
propTypes: true;
}
declare namespace hoistNonReactStatics {
type NonReactStatics<
Source,
C extends {
[key: string]: true;
} = {},
> = {
[
key in Exclude<
keyof Source,
Source extends React.MemoExoticComponent<any> ? keyof MEMO_STATICS | keyof C
: Source extends React.ForwardRefExoticComponent<any> ? keyof FORWARD_REF_STATICS | keyof C
: keyof REACT_STATICS | keyof KNOWN_STATICS | keyof C
>
]: Source[key];
};
}
declare function hoistNonReactStatics<
Target,
Source,
CustomStatic extends {
[key: string]: true;
} = {},
>(
TargetComponent: Target,
SourceComponent: Source,
customStatic?: CustomStatic,
): Target & hoistNonReactStatics.NonReactStatics<Source, CustomStatic>;
export = hoistNonReactStatics;
These definitions were written by JounQin, and James Reggio.
FAQs
TypeScript definitions for hoist-non-react-statics
The npm package @types/hoist-non-react-statics receives a total of 7,968,730 weekly downloads. As such, @types/hoist-non-react-statics popularity was classified as popular.
We found that @types/hoist-non-react-statics demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Next.js has patched a critical vulnerability (CVE-2025-29927) that allowed attackers to bypass middleware-based authorization checks in self-hosted apps.
Security News
A survey of 500 cybersecurity pros reveals high pay isn't enough—lack of growth and flexibility is driving attrition and risking organizational security.
Product
Socket, the leader in open source security, is now available on Google Cloud Marketplace for simplified procurement and enhanced protection against supply chain attacks.