79 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			79 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| import type { InspectorNodeTag } from './api.js';
 | |
| import type { ID } from './util.js';
 | |
| export type ComponentInstance = any;
 | |
| export interface ComponentTreeNode {
 | |
|     uid: ID;
 | |
|     id: string;
 | |
|     name: string;
 | |
|     renderKey: string | number;
 | |
|     inactive: boolean;
 | |
|     isFragment: boolean;
 | |
|     hasChildren: boolean;
 | |
|     children: ComponentTreeNode[];
 | |
|     domOrder?: number[];
 | |
|     consoleId?: string;
 | |
|     isRouterView?: boolean;
 | |
|     macthedRouteSegment?: string;
 | |
|     tags: InspectorNodeTag[];
 | |
|     autoOpen: boolean;
 | |
|     meta?: any;
 | |
| }
 | |
| export interface InspectedComponentData {
 | |
|     id: string;
 | |
|     name: string;
 | |
|     file: string;
 | |
|     state: ComponentState[];
 | |
|     functional?: boolean;
 | |
| }
 | |
| export interface StateBase {
 | |
|     key: string;
 | |
|     value: any;
 | |
|     editable?: boolean;
 | |
|     objectType?: 'ref' | 'reactive' | 'computed' | 'other';
 | |
|     raw?: string;
 | |
| }
 | |
| export interface ComponentStateBase extends StateBase {
 | |
|     type: string;
 | |
| }
 | |
| export interface ComponentPropState extends ComponentStateBase {
 | |
|     meta?: {
 | |
|         type: string;
 | |
|         required: boolean;
 | |
|         /** Vue 1 only */
 | |
|         mode?: 'default' | 'sync' | 'once';
 | |
|     };
 | |
| }
 | |
| export type ComponentBuiltinCustomStateTypes = 'function' | 'map' | 'set' | 'reference' | 'component' | 'component-definition' | 'router' | 'store';
 | |
| export interface ComponentCustomState extends ComponentStateBase {
 | |
|     value: CustomState;
 | |
| }
 | |
| export interface CustomState {
 | |
|     _custom: {
 | |
|         type: ComponentBuiltinCustomStateTypes | string;
 | |
|         objectType?: string;
 | |
|         display?: string;
 | |
|         tooltip?: string;
 | |
|         value?: any;
 | |
|         abstract?: boolean;
 | |
|         file?: string;
 | |
|         uid?: number;
 | |
|         readOnly?: boolean;
 | |
|         /** Configure immediate child fields */
 | |
|         fields?: {
 | |
|             abstract?: boolean;
 | |
|         };
 | |
|         id?: any;
 | |
|         actions?: {
 | |
|             icon: string;
 | |
|             tooltip?: string;
 | |
|             action: () => void | Promise<void>;
 | |
|         }[];
 | |
|         /** internal */
 | |
|         _reviveId?: number;
 | |
|     };
 | |
| }
 | |
| export type ComponentState = ComponentStateBase | ComponentPropState | ComponentCustomState;
 | |
| export interface ComponentDevtoolsOptions {
 | |
|     hide?: boolean;
 | |
| }
 |