import { TPlainObject } from '@flatbiz/utils';
import { CSSProperties, ReactElement, ReactNode } from 'react';

export interface CommonPropsWithChildren<S extends TPlainObject = TPlainObject> {
	className?: string;
	style?: CSSProperties & Partial<S>;
	children?: ReactNode | undefined;
}
export type CssHoverProps = {
	children: ReactElement | ReactElement[];
} & Pick<CommonPropsWithChildren<{
	"--v-css-hover-bgcolor": CSSProperties["backgroundColor"];
	"--v-css-hover-opacity": CSSProperties["opacity"];
	"--v-css-hover-border-radius": CSSProperties["borderRadius"];
}>, "style" | "children">;
/**
 * css hover 效果
 * ```
 * 1. 当children为数组时，会为children添加父级（会产生新节点）
 * 2. 当children为单个元素时，会在children元素上添加className、style（不会产生新节点）
 * ```
 * @param props
 * @returns
 */
export declare const CssNodeHover: (props: CssHoverProps) => import("react").JSX.Element;

export {};
