1 // Copyright (C) The Arvados Authors. All rights reserved.
3 // SPDX-License-Identifier: AGPL-3.0
5 import React from 'react';
6 import { DetailsResource } from "models/details";
8 interface GetDetailsParams {
13 export abstract class DetailsData<T extends DetailsResource = DetailsResource> {
14 constructor(protected item: T) { }
17 return this.item.name || 'Projects';
20 getTabLabels(): string[] {
24 abstract getIcon(className?: string): React.ReactElement<any>;
25 abstract getDetails({tabNr, showPreview}: GetDetailsParams): React.ReactElement<any>;