@crossed/primitive
Version:
A universal & performant styling library for React Native, Next.js & React
33 lines • 2.3 kB
TypeScript
/**
* Copyright (c) Paymium.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root of this projects source tree.
*/
import { GetProps } from '@crossed/core';
import { type ComponentType } from 'react';
export { Provider as ProviderSelect, useContext as useSelectContext, } from './context';
type Arg<Context extends Record<string, any>> = {
context?: Context;
};
export declare const createSelect: <SelectProps extends Record<string, any>, TriggerProps extends Record<string, any>, ContentProps extends Record<string, any>, PortalProps extends Record<string, any>, ItemProps extends Record<string, any>, DividerProps extends Record<string, any>, LabelProps extends Record<string, any>, C extends Record<string, any>>(components: {
Root: ComponentType<SelectProps>;
Trigger: ComponentType<TriggerProps>;
Content: ComponentType<ContentProps>;
Portal: ComponentType<PortalProps>;
Item: ComponentType<ItemProps>;
Divider: ComponentType<DividerProps>;
Label: ComponentType<LabelProps>;
}, { context }?: Arg<C>) => ((props: GetProps<import("react").ForwardRefExoticComponent<import("react").PropsWithoutRef<SelectProps> & import("react").RefAttributes<any>>> & {
value?: string;
defaultValue?: string;
onChange?: (_p: string) => void;
}) => import("react/jsx-runtime").JSX.Element) & {
Trigger: import("react").ForwardRefExoticComponent<import("react").PropsWithoutRef<import("..").RequiredAccessibilityProps<TriggerProps, "aria-label">> & import("react").RefAttributes<any>>;
Content: import("react").ForwardRefExoticComponent<import("react").PropsWithoutRef<ContentProps> & import("react").RefAttributes<any>>;
Portal: import("react").ForwardRefExoticComponent<import("react").PropsWithoutRef<PortalProps> & import("react").RefAttributes<any>>;
Item: import("react").ForwardRefExoticComponent<import("./SelectItem").SelectItemProps & import("react").RefAttributes<any>>;
Divider: import("react").ForwardRefExoticComponent<import("react").PropsWithoutRef<DividerProps> & import("react").RefAttributes<DividerProps["ref"]>>;
Label: import("react").ForwardRefExoticComponent<import("react").PropsWithoutRef<LabelProps> & import("react").RefAttributes<any>>;
};
//# sourceMappingURL=index.d.ts.map