/*! * Copyright (c) 2023-present, Okta, Inc. and/or its affiliates. All rights reserved. * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.") * * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0. * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * * See the License for the specific language governing permissions and limitations under the License. */ import { FC, PropsWithChildren, ReactElement, ReactNode } from "react"; import { DesignTokens } from "../../OdysseyDesignTokensContext.js"; import { type BasePickerProps, type BaseRenderOptionProps } from "./ComposablePicker.js"; export declare const StyledOption: import("@emotion/styled").StyledComponent<{ theme?: import("@emotion/react").Theme; as?: React.ElementType; } & { hasAdornment?: boolean; }, import("react").DetailedHTMLProps, HTMLLIElement>, {}>; export declare const OptionLabelContainer: import("@emotion/styled").StyledComponent<{ theme?: import("@emotion/react").Theme; as?: React.ElementType; } & { odysseyDesignTokens: DesignTokens; }, import("react").DetailedHTMLProps, HTMLDivElement>, {}>; export declare const OptionDescription: import("@emotion/styled").StyledComponent<{ theme?: import("@emotion/react").Theme; as?: React.ElementType; } & { odysseyDesignTokens: DesignTokens; }, import("react").DetailedHTMLProps, HTMLParagraphElement>, {}>; export declare const OptionDetails: import("@emotion/styled").StyledComponent<{ theme?: import("@emotion/react").Theme; as?: React.ElementType; } & { odysseyDesignTokens: DesignTokens; }, import("react").DetailedHTMLProps, HTMLDivElement>, {}>; export declare const OptionDetail: import("@emotion/styled").StyledComponent<{ theme?: import("@emotion/react").Theme; as?: React.ElementType; } & { odysseyDesignTokens: DesignTokens; }, import("react").DetailedHTMLProps, HTMLDivElement>, {}>; export type BaseOptionProps = { muiProps: BaseRenderOptionProps; odysseyDesignTokens: DesignTokens; }; type OptionComponentProps = { hasAdornment?: boolean; muiProps: BaseOptionProps["muiProps"]; }; export declare const Option: ({ children, hasAdornment, muiProps, }: PropsWithChildren) => import("@emotion/react/jsx-runtime").JSX.Element; export declare const OptionMetadataComponent: ({ metaData, odysseyDesignTokens, }: { metaData: OptionMetadata[]; odysseyDesignTokens: DesignTokens; }) => import("@emotion/react/jsx-runtime").JSX.Element; export declare const OptionDescriptionComponent: ({ description, odysseyDesignTokens, }: { description?: LabelDescription["description"]; odysseyDesignTokens: DesignTokens; }) => "" | import("@emotion/react/jsx-runtime").JSX.Element | undefined; export type OptionProps = { option: OptionType; }; export declare const OptionLabelOnlyComponent: ({ muiProps, odysseyDesignTokens, option, }: BaseOptionProps & OptionProps) => import("@emotion/react/jsx-runtime").JSX.Element; export type OptionMetadata = { detailText: string | number; icon: ReactElement; }; export type OptionGroupType = { group?: string; }; export type OptionValueType = { value: string | number; }; export type OptionLabelType = { label: string; }; export type BaseOptionType = OptionValueType & OptionGroupType & OptionLabelType; export type Metadata = { metaData: OptionMetadata[]; }; export type OptionLabelOnly = BaseOptionType; export type LabelDescription = BaseOptionType & { description?: string; }; export type LabelDescriptionMetadata = LabelDescription & Metadata; export type PickerProps = Omit, "adornmentSize" | "getOptionLabel" | "noOptionsText">; export type PickerComponentType = { (props: PickerProps): ReactNode; (props: PickerProps): ReactNode; (props: PickerProps): ReactNode; }; declare const MemoizedPicker: PickerComponentType & Pick; export { MemoizedPicker as Picker }; //# sourceMappingURL=Picker.d.ts.map