import React, { ElementType } from 'react'; import { Props } from '../../types'; declare let DEFAULT_LISTBOX_TAG: React.ExoticComponent<{ children?: React.ReactNode; }>; interface ListboxRenderPropArg { open: boolean; disabled: boolean; } export declare function Listbox(props: Props & { value: TType; onChange(value: TType): void; disabled?: boolean; horizontal?: boolean; }): JSX.Element; export declare namespace Listbox { var Button: ( = "button">(props: Props, ref: React.Ref) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | null) & { displayName: string; }; var Label: = "label">(props: Props) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | null; var Options: ( = "ul">(props: (Pick, Exclude, "children" | "as" | "refName" | "className" | "id">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: OptionsRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: OptionsRenderPropArg) => string) | undefined; } : {}) & { static?: undefined; } & { unmount?: boolean | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "id">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: OptionsRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: OptionsRenderPropArg) => string) | undefined; } : {}) & { unmount?: undefined; } & { static?: boolean | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "aria-labelledby">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: OptionsRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: OptionsRenderPropArg) => string) | undefined; } : {}) & { static?: undefined; } & { unmount?: boolean | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "aria-labelledby">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: OptionsRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: OptionsRenderPropArg) => string) | undefined; } : {}) & { unmount?: undefined; } & { static?: boolean | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "onKeyDown">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: OptionsRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: OptionsRenderPropArg) => string) | undefined; } : {}) & { static?: undefined; } & { unmount?: boolean | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "onKeyDown">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: OptionsRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: OptionsRenderPropArg) => string) | undefined; } : {}) & { unmount?: undefined; } & { static?: boolean | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "aria-activedescendant">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: OptionsRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: OptionsRenderPropArg) => string) | undefined; } : {}) & { static?: undefined; } & { unmount?: boolean | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "aria-activedescendant">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: OptionsRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: OptionsRenderPropArg) => string) | undefined; } : {}) & { unmount?: undefined; } & { static?: boolean | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "aria-orientation">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: OptionsRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: OptionsRenderPropArg) => string) | undefined; } : {}) & { static?: undefined; } & { unmount?: boolean | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "aria-orientation">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: OptionsRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: OptionsRenderPropArg) => string) | undefined; } : {}) & { unmount?: undefined; } & { static?: boolean | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "role">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: OptionsRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: OptionsRenderPropArg) => string) | undefined; } : {}) & { static?: undefined; } & { unmount?: boolean | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "role">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: OptionsRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: OptionsRenderPropArg) => string) | undefined; } : {}) & { unmount?: undefined; } & { static?: boolean | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "tabIndex">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: OptionsRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: OptionsRenderPropArg) => string) | undefined; } : {}) & { static?: undefined; } & { unmount?: boolean | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "tabIndex">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: OptionsRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: OptionsRenderPropArg) => string) | undefined; } : {}) & { unmount?: undefined; } & { static?: boolean | undefined; }), ref: React.Ref) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | null) & { displayName: string; }; var Option: = "li", TType = unknown>(props: (Pick, Exclude, "value" | "children" | "as" | "refName" | "className">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: OptionRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: OptionRenderPropArg) => string) | undefined; } : {}) & { disabled?: boolean | undefined; value: TType; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "id">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: OptionRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: OptionRenderPropArg) => string) | undefined; } : {}) & { disabled?: boolean | undefined; value: TType; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "role">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: OptionRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: OptionRenderPropArg) => string) | undefined; } : {}) & { disabled?: boolean | undefined; value: TType; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "tabIndex">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: OptionRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: OptionRenderPropArg) => string) | undefined; } : {}) & { disabled?: boolean | undefined; value: TType; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "aria-disabled">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: OptionRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: OptionRenderPropArg) => string) | undefined; } : {}) & { disabled?: boolean | undefined; value: TType; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "aria-selected">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: OptionRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: OptionRenderPropArg) => string) | undefined; } : {}) & { disabled?: boolean | undefined; value: TType; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "onPointerLeave">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: OptionRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: OptionRenderPropArg) => string) | undefined; } : {}) & { disabled?: boolean | undefined; value: TType; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "onMouseLeave">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: OptionRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: OptionRenderPropArg) => string) | undefined; } : {}) & { disabled?: boolean | undefined; value: TType; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "onPointerMove">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: OptionRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: OptionRenderPropArg) => string) | undefined; } : {}) & { disabled?: boolean | undefined; value: TType; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "onMouseMove">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: OptionRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: OptionRenderPropArg) => string) | undefined; } : {}) & { disabled?: boolean | undefined; value: TType; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "onFocus">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: OptionRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: OptionRenderPropArg) => string) | undefined; } : {}) & { disabled?: boolean | undefined; value: TType; })) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | null; } interface ButtonRenderPropArg { open: boolean; disabled: boolean; } declare type ButtonPropsWeControl = 'id' | 'type' | 'aria-haspopup' | 'aria-controls' | 'aria-expanded' | 'aria-labelledby' | 'disabled' | 'onKeyDown' | 'onClick'; interface LabelRenderPropArg { open: boolean; disabled: boolean; } declare type LabelPropsWeControl = 'id' | 'ref' | 'onClick'; interface OptionsRenderPropArg { open: boolean; } interface OptionRenderPropArg { active: boolean; selected: boolean; disabled: boolean; } export {};