@ansible/ansible-ui-framework
Version:
A framework for building applications using PatternFly.
38 lines (37 loc) • 1.42 kB
TypeScript
import { MenuToggleElement } from '@patternfly/react-core';
import { ReactNode } from 'react';
import { PageSelectOption } from './PageSelectOption';
export interface PageSingleSelectProps<ValueT> {
id?: string;
icon?: ReactNode;
placeholder: ReactNode;
value: ValueT | undefined | null;
onSelect: (value: ValueT | null) => void;
options: PageSelectOption<ValueT>[];
footer?: ReactNode;
isRequired?: boolean;
isDisabled?: string;
open?: boolean;
setOpen?: (open: boolean) => void;
searchValue?: string;
setSearchValue?: (searchValue: string) => void;
isLoading?: boolean;
queryLabel?: (value: ValueT) => ReactNode;
toggle?: (toggleRef: React.Ref<MenuToggleElement>) => ReactNode;
disableAutoSelect?: boolean;
disableSortOptions?: boolean;
disableMaxDropdownWidth?: boolean;
}
export declare function PageSingleSelect<ValueT>(props: PageSingleSelectProps<ValueT>): import("react/jsx-runtime").JSX.Element;
export declare function PageSingleSelectList(props: {
searchRef: React.RefObject<HTMLInputElement>;
options: PageSelectOption<unknown>[];
}): import("react/jsx-runtime").JSX.Element;
export declare const PageSingleSelectContext: import("react").Context<{
open: boolean;
setOpen: (open: boolean) => void;
}>;
export declare function usePageSingleSelectContext(): {
open: boolean;
setOpen: (open: boolean) => void;
};