/* * 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 { AriaAttributes as AriaAttributes$1, AriaRole, CSSProperties, PropsWithChildren, ReactNode, RefAttributes } from "react"; //#region src/lib/types.d.ts /** * Re-export due to not being exported by library */ /** Render props with optional default className merged with generic state */ type ClassNameRenderProps = T & { /** Optional default CSS class name */ defaultClassName?: string; }; /** CSS class name as string or render function receiving component state */ type RenderPropsClassName = string | ((values: ClassNameRenderProps) => string); /** Render props with optional default style merged with generic state */ type StylePropRenderProps = T & { /** Optional default inline styles */ defaultStyle?: CSSProperties; }; /** Inline styles as CSSProperties or render function receiving component state */ type RenderPropsStyle = CSSProperties | ((values: StylePropRenderProps) => CSSProperties); /** Render props with optional default children merged with generic state */ type ChildrenRenderProps = T & { /** Optional default children content */ defaultChildren?: ReactNode; }; /** Children as ReactNode or render function receiving component state */ type RenderPropsChildren = ReactNode | ((values: ChildrenRenderProps) => ReactNode); /** Props for className and style that accept render functions */ type StyleRenderProps = { /** The CSS [className](https://developer.mozilla.org/en-US/docs/Web/API/Element/className) for the element. A function may be provided to compute the class based on component state. */ className?: RenderPropsClassName; /** The inline [style](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/style) for the element. A function may be provided to compute the style based on component state. */ style?: RenderPropsStyle; }; /** Combined render props for className, style, and children */ type RenderProps = StyleRenderProps & { /** The children of the component. A function may be provided to alter the children based on component state. */ children?: RenderPropsChildren; }; /** Container for slot-based context values */ type SlottedValue = { /** Map of slot names to their values */ slots?: Record; }; /** Props for context providers with slot support */ type ProviderProps = PropsWithChildren & SlottedValue>; /** Extended ARIA attributes including role */ type AriaAttributes = AriaAttributes$1 & { /** ARIA role for the element */ role?: AriaRole; }; /** ARIA attributes combined with ref forwarding support */ type AriaAttributesWithRef = AriaAttributes & RefAttributes; //#endregion export { AriaAttributes, AriaAttributesWithRef, ChildrenRenderProps, ClassNameRenderProps, ProviderProps, RenderProps, RenderPropsChildren, RenderPropsClassName, RenderPropsStyle, SlottedValue, StylePropRenderProps, StyleRenderProps }; //# sourceMappingURL=types.d.ts.map