UNPKG

@ansible/ansible-ui-framework

Version:

A framework for building applications using PatternFly.

29 lines (28 loc) 1.46 kB
import { ReactNode } from 'react'; import { FieldPath, FieldPathValue, FieldValues, Validate } from 'react-hook-form'; import { PageSelectOption } from '../../PageInputs/PageSelectOption'; export interface SelectOptionObject { toString(): string; compareTo?(selectOption: unknown): boolean; } export type PageFormSelectProps<TFieldValues extends FieldValues = FieldValues, TFieldName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>, TSelection = unknown> = { id?: string; name: TFieldName; label?: string; labelHelpTitle?: string; labelHelp?: string | string[] | ReactNode; additionalControls?: ReactNode; placeholderText?: string; footer?: ReactNode; options: PageSelectOption<TSelection>[]; helperText?: string; isDisabled?: boolean; isReadOnly?: boolean; isRequired?: boolean; onChange?: (option?: TSelection) => void; validate?: Validate<FieldPathValue<TFieldValues, TFieldName>, TFieldValues> | Record<string, Validate<FieldPathValue<TFieldValues, TFieldName>, TFieldValues>>; defaultValue?: FieldPathValue<TFieldValues, TFieldName>; enableReset?: boolean; enableUndo?: boolean; }; export declare function PageFormSelect<TFieldValues extends FieldValues = FieldValues, TFieldName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>, TSelection = unknown>(props: PageFormSelectProps<TFieldValues, TFieldName, TSelection>): import("react/jsx-runtime").JSX.Element;