47 lines
838 B
TypeScript
47 lines
838 B
TypeScript
/**
|
|
* Type definitions for Vue Router meta fields
|
|
* Extends the RouteMeta interface with custom properties
|
|
*/
|
|
|
|
import 'vue-router'
|
|
|
|
declare module 'vue-router' {
|
|
interface RouteMeta {
|
|
/**
|
|
* Whether this route requires authentication
|
|
* @default true
|
|
*/
|
|
requiresAuth?: boolean
|
|
|
|
/**
|
|
* Whether this route requires admin role
|
|
* @default false
|
|
*/
|
|
requiresAdmin?: boolean
|
|
|
|
/**
|
|
* Page title for this route
|
|
*/
|
|
title?: string
|
|
|
|
/**
|
|
* Optional breadcrumb items for navigation
|
|
*/
|
|
breadcrumbs?: Array<{
|
|
label: string
|
|
to?: string
|
|
}>
|
|
|
|
/**
|
|
* Icon name for this route (for sidebar navigation)
|
|
*/
|
|
icon?: string
|
|
|
|
/**
|
|
* Whether to hide this route from navigation menu
|
|
* @default false
|
|
*/
|
|
hideInMenu?: boolean
|
|
}
|
|
}
|