import { ChoiceCardColumns, ChoiceCardEmits, ChoiceCardProps, ChoiceOption, ChoiceSelectPayload, ChoiceStep, ChoiceStepLabelFormatter } from './src/types'; import { default as TxChoiceCard } from './src/TxChoiceCard.vue'; /** * TxChoiceCard — a question card whose answers are rich rows (icon, label, one line of * description), optionally split over steps with a `‹ 1 / 2 ›` pager. Picking a row emits * `select`; the host decides whether that moves to the next step (`v-model:step`) or ends. * * @example * ```ts * import { TxChoiceCard } from '@talex-touch/tuffex' * * // * ``` * * @public */ declare const ChoiceCard: { new (...args: any[]): import('vue').CreateComponentPublicInstanceWithMixins; required: true; }; step: { type: NumberConstructor; default: undefined; }; selected: { type: StringConstructor; default: undefined; }; loading: { type: BooleanConstructor; default: boolean; }; loadingRows: { type: NumberConstructor; default: number; }; columns: { type: import('vue').PropType; default: number; }; appear: { type: BooleanConstructor; default: boolean; }; prevLabel: { type: StringConstructor; default: string; }; nextLabel: { type: StringConstructor; default: string; }; stepLabel: { type: import('vue').PropType; default: (current: number, total: number) => string; }; }>> & Readonly<{ onSelect?: ((payload: ChoiceSelectPayload) => any) | undefined; "onUpdate:step"?: ((index: number) => any) | undefined; }>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, { select: (payload: ChoiceSelectPayload) => any; "update:step": (index: number) => any; }, import('vue').PublicProps, { loading: boolean; selected: string; appear: boolean; nextLabel: string; prevLabel: string; step: number; columns: ChoiceCardColumns; loadingRows: number; stepLabel: ChoiceStepLabelFormatter; }, true, {}, {}, Record, Record, string, { prevRef: HTMLButtonElement; nextRef: HTMLButtonElement; listRef: HTMLUListElement; }, any, import('vue').ComponentProvideOptions, { P: {}; B: {}; D: {}; C: {}; M: {}; Defaults: {}; }, Readonly; required: true; }; step: { type: NumberConstructor; default: undefined; }; selected: { type: StringConstructor; default: undefined; }; loading: { type: BooleanConstructor; default: boolean; }; loadingRows: { type: NumberConstructor; default: number; }; columns: { type: import('vue').PropType; default: number; }; appear: { type: BooleanConstructor; default: boolean; }; prevLabel: { type: StringConstructor; default: string; }; nextLabel: { type: StringConstructor; default: string; }; stepLabel: { type: import('vue').PropType; default: (current: number, total: number) => string; }; }>> & Readonly<{ onSelect?: ((payload: ChoiceSelectPayload) => any) | undefined; "onUpdate:step"?: ((index: number) => any) | undefined; }>, {}, {}, {}, {}, { loading: boolean; selected: string; appear: boolean; nextLabel: string; prevLabel: string; step: number; columns: ChoiceCardColumns; loadingRows: number; stepLabel: ChoiceStepLabelFormatter; }>; __isFragment?: never; __isTeleport?: never; __isSuspense?: never; } & import('vue').ComponentOptionsBase; required: true; }; step: { type: NumberConstructor; default: undefined; }; selected: { type: StringConstructor; default: undefined; }; loading: { type: BooleanConstructor; default: boolean; }; loadingRows: { type: NumberConstructor; default: number; }; columns: { type: import('vue').PropType; default: number; }; appear: { type: BooleanConstructor; default: boolean; }; prevLabel: { type: StringConstructor; default: string; }; nextLabel: { type: StringConstructor; default: string; }; stepLabel: { type: import('vue').PropType; default: (current: number, total: number) => string; }; }>> & Readonly<{ onSelect?: ((payload: ChoiceSelectPayload) => any) | undefined; "onUpdate:step"?: ((index: number) => any) | undefined; }>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, { select: (payload: ChoiceSelectPayload) => any; "update:step": (index: number) => any; }, string, { loading: boolean; selected: string; appear: boolean; nextLabel: string; prevLabel: string; step: number; columns: ChoiceCardColumns; loadingRows: number; stepLabel: ChoiceStepLabelFormatter; }, {}, string, {}, Record, Record, string, import('vue').ComponentProvideOptions> & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & (new () => { $slots: Readonly<{ header?: (props: { step: ChoiceStep; stepIndex: number; total: number; }) => any; }> & { header?: (props: { step: ChoiceStep; stepIndex: number; total: number; }) => any; }; }) & import('vue').Plugin; export { ChoiceCard, TxChoiceCard }; export type { ChoiceCardColumns, ChoiceCardEmits, ChoiceCardProps, ChoiceOption, ChoiceSelectPayload, ChoiceStep, ChoiceStepLabelFormatter, }; export type TxChoiceCardInstance = InstanceType; export default ChoiceCard;