UNPKG

mic-inspector

Version:

A react inspector which a most similar of Chorme DevTools inspector

81 lines (80 loc) 1.97 kB
import { InlineComponentProps } from 'mic-global'; import { PropertyNameType } from '../property-name/types'; import { PropertyValueType } from '../property-value/types'; import { NamedDescriptor } from '../named-descriptor'; /** * Property props */ export declare type PropertyProps = DescribablePropertyProps | NondescribablePropertyProps; /** * Property own props interface */ export interface PropertyOwnProps extends InlineComponentProps<'name' | 'value'> { /** * No any children */ children?: never[]; /** * A boolean represents whether this property should be expand by default */ defaultExpand?: boolean; /** * Property descriptor */ descriptor?: unknown; /** * Property name */ name?: unknown; /** * A boolean represents whether enable the preview mode * In preview mode, the property can not expand and show sub properties of an object */ preview?: boolean; /** * A string represents the separator between property name and property value, default value is ':' */ separator?: string; /** * Property value */ value?: unknown; } /** * Nondescribable property props interface */ export interface NondescribablePropertyProps extends PropertyOwnProps { /** * Property descriptor */ descriptor?: never; /** * A boolean represents whether the object property is non-enumerable */ isNonenumerable?: boolean; /** * A specific property name to display */ name: PropertyNameType; /** * Any type data that you want to inspect */ value: PropertyValueType; } /** * Describable property props interface */ export interface DescribablePropertyProps extends PropertyOwnProps { /** * Property descriptor */ descriptor: NamedDescriptor; /** * Property name */ name?: never; /** * Property value */ value?: never; }