export interface Permission {
  id: string;
  name: string;
  code: string;
  type: PermissionType;
  description?: string;
  menuId?: string;
  menuPath?: string;
  status: 'active' | 'inactive';
  createdAt: string;
  updatedAt: string;
}

export type PermissionType =
  | 'view'
  | 'add'
  | 'edit'
  | 'delete'
  | 'export'
  | 'import'
  | 'approve'
  | 'control';

export interface Menu {
  id: string;
  parentId?: string;
  name: string;
  code: string;
  icon?: string;
  path?: string;
  component?: string;
  type: 'directory' | 'menu' | 'button';
  sort: number;
  visible: boolean;
  status: 'active' | 'inactive';
  children?: Menu[];
}