import type { Ref, ReactNode, ChangeEventHandler } from 'react'; import type { Action, BaseProps, ForwardRefForwardPropsComponent, TestIdProp } from '../../types'; import type { FormControlProps } from '../FormControl'; export interface SelectProps extends BaseProps, TestIdProp { /** Pass Options components as children to render the options of the Select list. */ children: ReactNode; /** Called when an Option is chosen within the list. */ onChange?: ChangeEventHandler; /** Callback fired when AI suggestion is accepted/rejected */ onResolveSuggestion?: FormControlProps['onResolveSuggestion']; /** * Sets DOM id for the control and associates label element via 'for' attribute. * If an id is not pass, a random id will be generated for any render. */ id?: FormControlProps['id']; /** Set visual state based on a validation state. */ status?: FormControlProps['status']; /** Pass a string or a fragment with an Icon and string. */ label?: FormControlProps['label']; /** Visually hides the label region. */ labelHidden?: FormControlProps['labelHidden']; /** It is recommended to pass a simple string to offer guidance. Text will be styled based on status prop. */ info?: FormControlProps['info']; /** Indicate if the field is required. The browser defaults to false. */ required?: FormControlProps['required']; /** * Creates a controlled input and sets the value. Requires an onChange handler to update value. * value + onChange is the recommended method per React team. */ value?: FormControlProps['value']; /** Disable the control. The browser defaults to false. */ disabled?: FormControlProps['disabled']; /** Makes the input non editable and non clickable. The browser defaults to false. */ readOnly?: FormControlProps['readOnly']; /** Sets html name attribute for the underlying control. Useful for mapping to a data field. */ name?: FormControlProps['name']; /** Pass an array of Action objects to append button(s) inline with the Select. */ actions?: Action[]; /** Pass a heading and content to show additional information on the field. */ additionalInfo?: FormControlProps['additionalInfo']; /** A ref to the select element. */ ref?: Ref; } export declare const StyledSelect: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute, HTMLSelectElement>, { hasStatus: boolean; readOnly: boolean; }>> & string; declare const _default: ForwardRefForwardPropsComponent & { getTestIds: (testIdProp?: TestIdProp["testId"]) => import("../../types").TestIdsRecord; }; export default _default; //# sourceMappingURL=Select.d.ts.map