import { LinkedAsset } from '../components/v2/DialogLinkedAsset/DialogLinkedAsset.vue.d'; export type AssetFieldObject = { _id?: string; key?: number; name?: string; }; export type ChildAsset = { parent: LinkedAsset; children: LinkedAsset[]; family: LinkedAsset[]; }; export type ParentAsset = { parent: undefined; children: LinkedAsset[]; family: LinkedAsset[]; }; export type FamilyData = (ParentAsset | ChildAsset) & { _id: string; }; export type GetLinkedAssetFamilyResponse = { data: FamilyData[]; }; export type AssetName = AssetFieldObject & { nameWithSequence?: string; sequence?: number; aliasCode?: string; category?: AssetFieldObject; }; export type Asset = { _id?: string; asset?: string; assetId?: string; name?: AssetName; aliasName?: string; measurement?: AssetFieldObject; tagType?: string; status?: string; category?: AssetFieldObject; group?: AssetFieldObject; brand?: AssetFieldObject; model?: AssetFieldObject; assetName?: AssetName; assetGroup?: AssetFieldObject; assetBrand?: AssetFieldObject; assetModel?: AssetFieldObject; assetTagType?: string; assignedTo?: string; isTransactionable?: boolean; addOn?: { repairTicketing?: boolean; maintenance?: boolean; tracking?: boolean; audit?: boolean; }; purchase?: { date?: string; cost?: string; currency?: string; warrantyDuration?: string; }; lastModifier?: string; updatedAt?: string; rfid?: string; qr?: string; firstImageSmall?: string; firstImageMedium?: string; firstImageBig?: string; secondImageSmall?: string; secondImageMedium?: string; secondImageBig?: string; assetImageSmall?: string; assetImageMedium?: string; assetImageBig?: string; setDefault?: 'firstImage' | 'secondImage'; };