import type { Component } from 'vue'; export type CustomBkFlowTab = CustomTab; export type CustomBkFlowTabData = CustomTabData<{ data?: Partial; has_confidence?: boolean; loading?: boolean; node_id?: string; node_name?: string; task_id?: number; task_name?: string; }>; export type CustomTab>> = { data?: T & { messageUid?: string; }; icon?: string; label: string; name: string; }; export type CustomTabData> = { component?: Component; props?: T; }; export interface NodeDetailData { inputs: Record; node_id: string; task_id: number; basic_info: { auto_retry: { enable: boolean; interval: number; times: number; }; error_ignorable: boolean; node_name: string; optional: boolean; retryable: boolean; skippable: boolean; stage_name: string; template_name: string; timeout_config: { action: string; enable: boolean; seconds: number; }; }; outputs: Array<{ key: string; preset: boolean; value: unknown; }>; plugin_output: Array<{ key: string; name: string; schema: { description: string; enum: unknown[]; properties?: Record; type: string; }; type: string; }>; }