1 | import type { AriaAttributes } from 'react';
|
2 | import { ActionMeta, GroupBase, InitialInputFocusedActionMeta, OnChangeValue, Options, OptionsOrGroups } from '../types';
|
3 | export declare type OptionContext = 'menu' | 'value';
|
4 | export declare type GuidanceContext = 'menu' | 'input' | 'value';
|
5 | export declare type AriaSelection<Option, IsMulti extends boolean> = InitialInputFocusedActionMeta<Option, IsMulti> | (ActionMeta<Option> & {
|
6 | value: OnChangeValue<Option, IsMulti>;
|
7 | option?: Option;
|
8 | options?: Options<Option>;
|
9 | });
|
10 | export interface AriaGuidanceProps {
|
11 |
|
12 | 'aria-label': AriaAttributes['aria-label'];
|
13 |
|
14 | context: GuidanceContext;
|
15 |
|
16 | isSearchable: boolean;
|
17 |
|
18 | isMulti: boolean;
|
19 |
|
20 | isDisabled: boolean | null;
|
21 |
|
22 | tabSelectsValue: boolean;
|
23 |
|
24 | isInitialFocus: boolean;
|
25 | }
|
26 | export declare type AriaOnChangeProps<Option, IsMulti extends boolean> = AriaSelection<Option, IsMulti> & {
|
27 |
|
28 | label: string;
|
29 |
|
30 | labels: string[];
|
31 |
|
32 | isDisabled: boolean | null;
|
33 | };
|
34 | export interface AriaOnFilterProps {
|
35 |
|
36 | inputValue: string;
|
37 |
|
38 | resultsMessage: string;
|
39 | }
|
40 | export interface AriaOnFocusProps<Option, Group extends GroupBase<Option>> {
|
41 |
|
42 | context: OptionContext;
|
43 |
|
44 | focused: Option;
|
45 |
|
46 | isDisabled: boolean;
|
47 |
|
48 | isSelected: boolean;
|
49 |
|
50 | label: string;
|
51 |
|
52 | options: OptionsOrGroups<Option, Group>;
|
53 |
|
54 | selectValue: Options<Option>;
|
55 |
|
56 | isAppleDevice: boolean;
|
57 | }
|
58 | export declare type AriaGuidance = (props: AriaGuidanceProps) => string;
|
59 | export declare type AriaOnChange<Option, IsMulti extends boolean> = (props: AriaOnChangeProps<Option, IsMulti>) => string;
|
60 | export declare type AriaOnFilter = (props: AriaOnFilterProps) => string;
|
61 | export declare type AriaOnFocus<Option, Group extends GroupBase<Option> = GroupBase<Option>> = (props: AriaOnFocusProps<Option, Group>) => string;
|
62 | export interface AriaLiveMessages<Option, IsMulti extends boolean, Group extends GroupBase<Option>> {
|
63 |
|
64 | guidance?: (props: AriaGuidanceProps) => string;
|
65 |
|
66 | onChange?: (props: AriaOnChangeProps<Option, IsMulti>) => string;
|
67 |
|
68 | onFilter?: (props: AriaOnFilterProps) => string;
|
69 |
|
70 | onFocus?: (props: AriaOnFocusProps<Option, Group>) => string;
|
71 | }
|
72 | export declare const defaultAriaLiveMessages: {
|
73 | guidance: (props: AriaGuidanceProps) => string;
|
74 | onChange: <Option, IsMulti extends boolean>(props: AriaOnChangeProps<Option, IsMulti>) => string;
|
75 | onFocus: <Option_1, Group extends GroupBase<Option_1>>(props: AriaOnFocusProps<Option_1, Group>) => string;
|
76 | onFilter: (props: AriaOnFilterProps) => string;
|
77 | };
|