import type { IGetDepartmentVo, IGetDepartmentUserItem } from '@teable/openapi'; export declare enum TreeNodeType { USER = "user", DEPARTMENT = "department" } export type UserNode = Pick & { type: TreeNodeType.USER; }; export type DepartmentNode = Pick & { type: TreeNodeType.DEPARTMENT; }; export type TreeNode = UserNode | DepartmentNode; export type SelectedUser = { id: string; type: TreeNodeType.USER; }; export type SelectedDepartment = { id: string; type: TreeNodeType.DEPARTMENT; }; export type SelectedMember = SelectedUser | SelectedDepartment; export interface SelectedUserWithData extends SelectedUser { data: UserNode; } export type SelectedDepartmentWithData = SelectedDepartment & { data: DepartmentNode; }; export type SelectedMemberWithData = SelectedUserWithData | SelectedDepartmentWithData;