radix-vue
Version:
Vue port for Radix UI Primitives.
72 lines (71 loc) • 2.54 kB
TypeScript
import type { ComputedRef, VNodeRef } from 'vue';
import type { CollapsibleRootProps } from '../Collapsible';
declare enum AccordionItemState {
Open = "open",
Closed = "closed"
}
export interface AccordionItemProps extends Omit<CollapsibleRootProps, 'open' | 'defaultOpen' | 'onOpenChange'> {
/**
* Whether or not an accordion item is disabled from user interaction.
* When true, prevents the user from interacting with the item.
*
* @defaultValue false
*/
disabled?: boolean;
/**
* A string value for the accordion item. All items within an accordion should use a unique value.
*/
value: string;
}
interface AccordionItemContext {
open: ComputedRef<boolean>;
dataState: ComputedRef<AccordionItemState>;
disabled: ComputedRef<boolean>;
dataDisabled: ComputedRef<'' | undefined>;
triggerId: string;
primitiveElement: VNodeRef;
currentElement: ComputedRef<HTMLElement | undefined>;
value: ComputedRef<string>;
}
export declare const injectAccordionItemContext: <T extends AccordionItemContext | null | undefined = AccordionItemContext>(fallback?: T | undefined) => T extends null ? AccordionItemContext | null : AccordionItemContext, provideAccordionItemContext: (contextValue: AccordionItemContext) => AccordionItemContext;
declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
disabled: {
type: import("vue").PropType<boolean>;
};
value: {
type: import("vue").PropType<string>;
required: true;
};
asChild: {
type: import("vue").PropType<boolean>;
};
as: {
type: import("vue").PropType<import('../Primitive').AsTag | import("vue").Component>;
};
}, {
open: ComputedRef<boolean>;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
disabled: {
type: import("vue").PropType<boolean>;
};
value: {
type: import("vue").PropType<string>;
required: true;
};
asChild: {
type: import("vue").PropType<boolean>;
};
as: {
type: import("vue").PropType<import('../Primitive').AsTag | import("vue").Component>;
};
}>>, {}, {}>, {
default?(_: {
open: boolean;
}): any;
}>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
new (): {
$slots: S;
};
};