2
0
mirror of https://github.com/tenrok/vue-form-wizard.git synced 2026-06-16 10:20:32 +03:00

Add typescript definitions

Closes #79
This commit is contained in:
cristijora
2017-11-22 18:59:57 +02:00
parent a8d1f6150f
commit deb06b03bf
6 changed files with 77 additions and 9 deletions
+33
View File
@@ -0,0 +1,33 @@
export type ShapeType = 'circle' | 'square' | 'tab'
export type LayoutType = 'vertical' | 'horizontal'
export type StepSizeType = 'xs' | 'sm' | 'md' | 'lg'
export declare class Wizard {
/** Wizard title */
title: string
/** Wizard subtitle */
subtitle: string
nextButtonText: string
backButtonText: string
finishButtonText: string
/** Whether to hide footer buttons */
hideButtons: boolean
/** Whether to trigger beforeChange function when navigating back */
validateOnBack: boolean
/** Active step and button color */
color: string
/** Step color when the current step is not valid */
errorColor: string
/** Main step shape */
shape: ShapeType
/** Wizard layout */
layout: LayoutType
/** Additional css classes for steps */
stepsClasses: string[]
/** Step size */
stepSize: StepSizeType
/** Step transition from inactive to active */
transition: string
/** Tab index where the wizard should start */
startIndex: number
}
+14
View File
@@ -0,0 +1,14 @@
export declare class Tab {
/** Title to be displayed under each step */
title?: string
/** css class for each step icon */
icon?: string
/***
* Function to execute before tab switch. Return value must be boolean
* If the return result is false, tab switch is restricted
*/
beforeChange (): boolean | Promise
/** Vue router route object */
route: string | object
additionalInfo: object
}
+6
View File
@@ -0,0 +1,6 @@
export declare class Step {
/** Tab component for the step. This should be usually passed through the `step` scoped slot */
tab: object
transition: string
index: number
}
+12
View File
@@ -0,0 +1,12 @@
import Vue from 'vue'
export function install (vue: typeof Vue): void
import { Wizard } from './FormWizard'
import { Tab } from './TabContent'
import { Step } from './WizardStep'
export class FormWizard extends Wizard {}
export class TabContent extends Tab {}
export class WizardStep extends Step {}