import BaseService, { Response } from './base.js'; import { FileServiceOptions } from './file.js'; export interface DataItem { uid: string; name: string; description?: string; children?: any[]; } export interface CommonData { valueNames: string[]; valueMap: { [key: string]: R; }; } export default abstract class CommonService = CommonData> extends BaseService { needResponseChildren: boolean; constructor(relativeFilePath: string, options?: FileServiceOptions); add(g: Omit): Response; delete(uid: string): Response; update(g: R): void; getList(): Response; protected getChildren(uid: string): DataItem[]; protected deleteChildren(uid: string): void; protected abstract getChildrenService(uid: string): CommonService; }