import React, { DetailedHTMLProps, HTMLAttributes, type PropsWithChildren } from 'react';
import 'jb-input';
import { JBInputWebComponent, type JBInputEventType, type SizeVariants } from 'jb-input';
import { type JBInputEvents, useJBInputEvents } from './events-hook.js';
import { type JBInputAttributes, useJBInputAttribute } from './attributes-hook.js';
import type { JBElementStandardProps } from 'jb-core/react';
export { type JBInputEvents, useJBInputEvents, type JBInputAttributes, useJBInputAttribute, type JBInputEventType };
export type DirectProps = {
label?: string;
message?: string;
placeholder?: string;
size?: SizeVariants;
name?: string;
type?: string;
inputmode?: string;
error?: string;
autocomplete?: string;
};
type JBInputType = DetailedHTMLProps, JBInputWebComponent> & DirectProps;
declare module "react" {
namespace JSX {
interface IntrinsicElements {
'jb-input': JBInputType;
}
}
}
export declare const JBInput: React.ForwardRefExoticComponent & {
children?: React.ReactNode | undefined;
} & JBInputEvents & JBInputAttributes & DirectProps & React.RefAttributes>;
export type BaseProps = PropsWithChildren> & JBInputEvents & JBInputAttributes & DirectProps;
export type Props = BaseProps;