28 lines
662 B
TypeScript
28 lines
662 B
TypeScript
import type { ProLinkProps } from '@/components/ui/pro-link';
|
|
import { type } from 'arktype';
|
|
import type { LucideIcon } from 'lucide-react';
|
|
|
|
export interface NavMainItem {
|
|
link?: ProLinkProps;
|
|
title: string;
|
|
icon?: LucideIcon;
|
|
children?: { title: string; link: ProLinkProps }[];
|
|
}
|
|
|
|
export interface NavMainGroup {
|
|
group: string;
|
|
items: NavMainItem[];
|
|
}
|
|
|
|
export const CreateCompleteAction = {
|
|
Back: 'back',
|
|
Detail: 'detail',
|
|
} as const;
|
|
|
|
export type CreateCompleteAction =
|
|
(typeof CreateCompleteAction)[keyof typeof CreateCompleteAction];
|
|
|
|
export const CreateCompleteActionSchema = type.enumerated(
|
|
...Object.values(CreateCompleteAction)
|
|
);
|