import { types as t, type NodePath } from "@babel/core"; import { PseudoProps } from "src/system/pseudo"; import { CSSProperty } from "../../system/types"; export type ExtractedStyleProps = T extends NodePath ? { filteredAttributes: t.JSXAttribute[]; styledProps: { [key: string]: CSSProperty | number | (CSSProperty | number)[]; }; pseudoProps: PseudoProps; } : { filteredProperties: t.ObjectProperty[]; styledProps: { [key: string]: string | number | (string | number)[]; }; pseudoProps: PseudoProps; }; /** * Extracts style props from a JSX opening element or an ObjectExpression in a React.createElement call * and returns the filtered properties and the extracted style props. */ export declare function extractStyleProps | NodePath>(path: T): ExtractedStyleProps;