/* * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved. * This file is licensed to you under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. You may obtain a copy * of the License at https://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 REPRESENTATIONS * OF ANY KIND, either express or implied. See the License for the specific language * governing permissions and limitations under the License. */ import { ButtonProps } from "../button/types.js"; import { LabelProps } from "../label/types.js"; import { RefAttributes } from "react"; import { SelectProps } from "react-aria-components/Select"; import { ListLayoutOptions, VirtualizerProps } from "react-aria-components/Virtualizer"; import { PopoverProps } from "react-aria-components/Popover"; import { FieldErrorProps } from "react-aria-components/FieldError"; //#region src/components/select-field/types.d.ts /** * Props for SelectField component. * * Extends AriaSelectProps with form field features and virtualization. * - `classNames.description` - CSS class for the description text. * - `classNames.error` - CSS class for the error message. * - `classNames.field` - CSS class for the field container. * - `classNames.label` - CSS class for the label. * - `classNames.trigger` - CSS class for the trigger button. * - `classNames.value` - CSS class for the selected value display. * - `classNames.popover` - CSS class for the dropdown popover. * - `label` - Label text for the field. * - `description` - Helper text below the field. * - `errorMessage` - Error message displayed when invalid. * - `isReadOnly` - Displays value without dropdown interaction. * - `size` - Field size ('medium' or 'small'). */ type SelectFieldProps = Omit & Pick, 'layoutOptions'> & RefAttributes & { classNames?: { description?: string; error?: FieldErrorProps['className']; field?: string; label?: LabelProps['className']; trigger?: ButtonProps['className']; value?: string; popover?: PopoverProps['className']; }; label?: string; description?: string; errorMessage?: string; isReadOnly?: boolean; size?: 'medium' | 'small'; }; //#endregion export { SelectFieldProps }; //# sourceMappingURL=types.d.ts.map