Project: Kui (App Definition and Development / Application Definition & Image Build)
File: kui_shell_core.md

/ @kui-shell/core Badge: `string` \| \| `Element` Button<`T`\>: `DrilldownButton`<`T`\> \| `ViewButton`<`T`\> | Name | Type | | : | :-- | | `T` | | CommandHandler<`T`, `O`\>: (`args`: <`O`\>) => `T` \| `Promise`<`T`\> | Name | Type | | : | :-- | | `T` | extends | | `O` | extends | (`args`): `T` \| `Promise`<`T`\> base command handler | Name | Type | | :-- | :- | | `args` | <`O`\> | `T` \| `Promise`<`T`\> CommandStringContent: `WithOptionalContentType`<\> & { `contentFrom`: `string` } `Content` as `CommandStringContent` will be executed via a REPL.qexec; the command is assumed to return either `ScalarRersource` or `ScalarContent`. CommentaryResponse: `Object` | Name | Type | | :-- | : | | `apiVersion` | `"kui-shell/v1"` | | `kind` | `"CommentaryResponse"` | | `props` | `Object` | | `props.baseUrl?` | `string` | | `props.children` | `string` | | `props.codeBlockResponses?` | { `response`: ; `status`: `"done"` \| `"error"` }[] | | `props.edit?` | `boolean` | | `props.filepath?` | `string` | | `props.header?` | `boolean` | | `props.preview?` | `boolean` | | `props.receive?` | `string` | | `props.repl?` | | | `props.replace?` | `boolean` | | `props.send?` | `string` | | `props.title?` | `string` | CompletionResponse: `string` \| { `addSpace?`: `boolean` ; `completion`: `string` ; `docs?`: `string` ; `label?`: `string` } Content<`T`\>: \| \| \| `FunctionContent`<`T`\> \| \| The classes of supported `Content` are: `ScalarContent`: such as pre-formatted HTML, or or `Table` model `StringContent`: a string with an optional `contentType` `FunctionContent<T>`: a function that takes a `T` and produces `ScalarContent` `CommandStringContent`: a string to be executed as a Kui command, and producing `ScalarContent` | Name | Type | | : | :- | | `T` | extends = | Editable: `Object` The Resource trait | Name | Type | | :-- | :- | | `spec` | | ExecOptionsWithUUID: `Exclude`<, `"execUUID"`\> & `Required`<`Pick`<, `"execUUID"`\>\> Transform the `execUUID` field of `ExecOptions` to be required. FunctionThatProducesContent<`T`\>: (`tab`: , `entity`: `T`, `args`: { `argsForMode?`: ; `argvNoOptions`: `string` }) => \| \| \| `Promise`< \| \| \> \| | Name | Type | | : | :- | | `T` | extends = | (`tab`, `entity`, `args`): \| \| \| `Promise`< \| \| \> \| `Content` as `FunctionThatProducesContent<T>` is a function that takes a `T` and produces either a resource or some { content, contentType } wrapper. | Name | Type | | :- | : | | `tab` | | | `entity` | `T` | | `args` | `Object` | | `args.argsForMode?` | | | `args.argvNoOptions` | `string`[] | |

| | \| \| \| `Promise`< \| \| \> \| Job: & & `Partial`<\> KResponse<`Content`\>: `Entity`<`Content`\> A command `KResponse` can be any supported `Entity` type | Name | Type | | :-- | :-- | | `Content` | extends `any` = `any` | Link: `Label` & `Command` \| `Href` Menu: `Label` & `MenuItems` MixedResponse: `MixedResponsePart`[] Mode<`T`\>: <`T`\> \| <`T`\> | Name | Type | | : | :-- | | `T` | | ModeDeclaration<`Resource`\>: | Name | Type | | : | :- | | `Resource` | extends | ModeFilter<`Resource`\>: (`resource`: `Resource`) => `boolean` | Name | Type | | : | :- | | `Resource` | extends | (`resource`): `boolean` | Name | Type | | : | : | | `resource` | `Resource` | `boolean` MultiModalMode<`T`\>: `Label` & `ModeTraits` & `VisibilityTraits` & <`T`\> A `Mode` is a `Label` plus some `Content` and `ModeTraits` | Name | Type | | : | :-- | | `T` | | MultiModalResponse<`Resource`\>: `Resource` & `View`<`Resource`\> A `MultiModalResponse` has all the fields of a class of `Resource` plus a way to `View` those resources. | Name | Type | | : | :-- | | `Resource` | | NavResponse: `Object` A `NavResponse` is a collection of `MultiModalResponse` with menu navigation | Name | Type | | :- | :-- | | `apiVersion` | `"kui-shell/v1"` | | `breadcrumbs?` | [] | | `kind` | `"NavResponse"` | | `links?` | [] | | `menus` | [] | NewSplitRequest: `Object` | Name | Type | | :-- | : | | `modification` | `"NewSplit"` | | `options?` | `Object` | | `options.cmdline?` | `string` | | `options.if?` | `string` | | `options.ifnot?` | `string` | | `options.index?` | `number` | | `options.inverseColors?` | `boolean` | | `options.position?` | `"default"` \| `"left-strip"` \| `"bottom-strip"` | | `options.swap?` | `Object` | | `options.swap.a` | `number` | | `options.swap.b` | `number` | PluginRegistration: (`commandTree`: , `options?`: { `usage`: `PrescanUsage` }) => `KuiPlugin` (`commandTree`, `options?`): `KuiPlugin` | Name | Type | | :-- | :- | | `commandTree` | | | `options?` | `Object` | | `options.usage` | `PrescanUsage` | `KuiPlugin` PreloadRegistration: (`registrar`: ) => `Promise`<`void` \| `void`[]\> (`registrar`): `Promise`<`void` \| `void`[]\> | Name | Type | | :- | : | | `registrar` | | `Promise`<`void` \| `void`[]\> PrettyUsageModel: `Object` | Name | Type | | :- | :- | | `examples?` | `Example`[] | | `intro?` | `string` | | `options?` | `Option`[] | | `related?` | `Related`[] | | `title` | `Title` | | `usages` | `Usage`[] | RadioTableCell: `string` \| { `hints?`: \| [] ; `key?`: `string` ; `title?`: `string` ; `value`: `string` } ReactProvider: `Object` | Name | Type | | : | : | | `react` | (`props`: ) => `ReactElement`<`any`, `string` \| `JSXElementConstructor`<`any`\>\> | ReactResponse: `Object` | Name | Type | | : | :- | | `react` | `ReactNode` | ResourceByReferenceWithContent<`T`\>: <`T`\> | Name | Type | | : | :-- | | `T` | extends `any` = `any` | ResourceWithMetadataWithContent<`T`\>: <`T`\> | Name | Type | | : | :-- | | `T` | extends `any` = `any` | ScalarResource: `string` \| `HTMLElement` \| \| A `ScalarResource` is Any kind of resource that is directly represented, as opposed to being implicitly represented by a function call. ScalarResponse<`RowType`\>: `SimpleEntity` \| <`RowType`\> & `Partial`<\> \| \| \| \| \| `RandomErrorResponse1` \| `RandomErrorResponse2` This type covers all responses with no complex internal structure that views may wish to interpret into fancier views. | Name | Type | | :-- | :-- | | `RowType` | extends = | SnapshottedEvent<`E`\>: `Omit`<`E`, `"tab"`\> & { `tab`: `E` } In order to snapshot an event, we'll need to remember just the tab uuid | Name | Type | | : | :-- | | `E` | extends \| | Stream: (`response`: ) => `void` \| `Promise`<`void`\> (`response`): `void` \| `Promise`<`void`\> | Name | Type | | : | :- | | `response` | | `void` \| `Promise`<`void`\> Streamable: StringContent<`ContentType`\>: <`string`\> & `WithOptionalContentType`<`ContentType`\> & `Partial`<\> Special case of `ScalarContent` for strings; string content may optionally provide a

| Name | Type | | : | :- | | `ContentType` | | StringDiffContent<`ContentType`\>: `Object` Compare 2 `StringContent` | Name | Type | | : | :- | | `ContentType` | | | Name | Type | | : | : | | `content` | `Object` | | `content.a` | `string` | | `content.b` | `string` | | `contentType` | `ContentType` | SupportedStringContent: `"yaml"` \| `"text/markdown"` \| `"text/html"` \| `"json"` \| `"shell"` \| `"text/plain"` Supported String content types Suspendable: `Omit`<, `"write"`\> TabLayoutModificationResponse<`Request`\>: `Object` If your controller wants to manipulate the tab layout, this is your response type! | Name | Type | | :-- | :- | | `Request` | extends `ModificationRequest` = `ModificationRequest` | | Name | Type | | :-- | : | | `apiVersion` | `"kui-shell/v1"` | | `kind` | `"TabLayoutModificationResponse"` | | `spec` | `Request` & { `ok`: `MarkdownResponse` } | ToolbarProps: `Object` | Name | Type | | :- | :-- | | `willUpdateToolbar?` | (`toolbarText`: , `extraButtons?`: <<`void`\>\>[], `extraButtonsOverride?`: `boolean`) => `void` | ViewTransformer<`T`, `O`\>: (`args`: <`O`\>, `response`: `T`) => `Promise`<`T`\> \| `void` \| `Promise`<`void`\> | Name | Type | | : | :-- | | `T` | extends | | `O` | extends | (`args`, `response`): `Promise`<`T`\> \| `void` \| `Promise`<`void`\> | Name | Type | | : | :- | | `args` | <`O`\> | | `response` | `T` | `Promise`<`T`\> \| `void` \| `Promise`<`void`\> Store: () => `LocalStorage` (): `LocalStorage` This shim allows clients to define a localStorage scheme, if they cannot provide window.localStorage. `LocalStorage` SymbolTable: `SymbolTable` boot: (`client`: `ClientRender`) => `Promise`<`void`\> (`client`): `Promise`<`void`\> Usage: clients will invoke this with their main renderer. For reference, the HTML template is to be found in ../../../templates/index.ejs. This template is in turn managed by packages/webpack/webpack.config.js. | Name | Type | | :- | :- | | `client` | `ClientRender` | `Promise`<`void`\> encodeComponent: (`component`: `string` \| `number` \| `boolean`, `quote`: `string`) => `string` (`component`, `quote?`): `string` Add quotes if the argument needs it; compare to encodeURIComponent | Name | Type | Default value | | :- | :-- | : | | `component` | `string` \| `number` \| `boolean` | `undefined` | | `quote` | `string` | `'"'` | `string` i18n: (`plugin`: `string`, `namespace`: `string`) => (`key`: `string`, ...`parameters`: (`string` \| `number`)[]) => `string` (`plugin`, `namespace?`): (`key`: `string`, ...`parameters`: (`string` \| `number`)[]) => `string` | Name | Type | Default value | | :- | :- | : | | `plugin` | `string` | `undefined` | | `namespace` | `string` | `'resources'` | `fn` (`key`, ...`parameters`): `string` | Name | Type | | :-- | :-- | | `key` | `string` | |

| (`string` \| `number`)[] | `string` KeyCodes: `Object` | Name | Type | | : | :- | | `A` | `number` | | `B` | `number` | | `BACKSPACE` | `number` | | `C` | `number` | | `D` | `number` | | `DOWN` | `number` | | `E` | `number` | | `END` | `number` | | `ENTER` | `number` | | `ESCAPE` | `number` | | `F` | `number` | | `HOME` | `number` | | `K` | `number` | | `L` | `number` | | `LEFT_ARROW` | `number` | | `N` | `number` | | `P` | `number` | | `PAGEDOWN` | `number` | | `PAGEUP` | `number` | | `R` | `number` | | `RIGHT_ARROW` | `number` | | `T` | `number` | | `TAB` | `number` | | `U` | `number` | | `UP` | `number` | badgeRegistrar: <\>[] = `[]` registered badge handlers commandsTrie: `TrieSearch`<`string`\> History(`tab`): | Name | Type | | :- | :- | | `tab` | `string` \| | `Const` \_split(`str`, `removeOuterQuotes?`, `returnIndices?`, `removeInlineOuterQuotes?`, `splitBy?`, `startIdx?`, `endIdx?`): `string` | Name | Type | Default value | | : | :-- | : | | `str` | `string` | `undefined` | | `removeOuterQuotes` | `boolean` | `true` | | `returnIndices` | `boolean` | `false` | | `removeInlineOuterQuotes` | `boolean` | `false` | | `splitBy` | `string` | `' '` | | `startIdx` | `number` | `0` | | `endIdx` | `number` | `str.length` | `string` addRelevantModes<`Resource`\>(`tab`, `modes`, `command`, `resource`): `void` Apply all registered modes that are relevant to the given resource to the given modes model | Name | Type | | : | :- | | `Resource` | extends <`void`, `Resource`\> | | Name | Type | | : | : | | `tab` | | | `modes` | <<`void`\>\>[] | | `command` | `string` | | `resource` | `Object` | | `resource.resource` | `Resource` | `void` bootIntoSandbox(): `Promise`<`void`\> For booting into an external browser sandbox, such as codesandbox.io `Promise`<`void`\> cellShouldHaveBadge(`cell`): `void` \| Should the cell be rendered with a traffic light badge? | Name | Type | | :-- | : | | `cell` | | `void` \| `Const` commandsOfferedByPlugin(`plugin?`): `Promise`<<\>\> Render the commands provided by a given plugin | Name | Type | | :-- | :- | | `plugin?` | `string` | `Promise`<<\>\> `Const` disableInputQueueing(`tab`): `string` | Name | Type | | :- | :- | | `tab` | | `string` doCancel(`tab`, `block`, `valueTypedSoFar`): `void` | Name | Type | | :- | :-- | | `tab` | | | `block` | | | `valueTypedSoFar` | `string` | `void` `Const` doEval(`_tab`, `block`, `command`, `execUUID?`): `Promise`<<`any`\> \| <`number`\>\> User hit enter in the REPL | Name | Type | Description | | :- | :-- | :-- | | `_tab` | | - | | `block` | | - | | `command` | `string` | - | | `execUUID?` | `string` | for command re-execution | `Promise`<<`any`\> \| <`number`\>\> `Const` empty(`node`): `void` Clean out the given DOM node | Name | Type | | :-- | :-- | | `node` | `Node` | `void` executeSequentially(): `boolean` `boolean` findCompletions(`tab`, `commandLine`, `spec`): `Promise`<[]\> Consult each registered enumerator to see what it has to offer in the way of completions. Pick the one with highest priority, or the first to register in the case of a tie-breaker. | Name | Type | | : | :- | | `tab` | `Object` | |

| | | `commandLine` | `Omit`<<\>, `"pipeStages"` \| `"pipeStagesNoOptions"`\> | | `spec` | | `Promise`<[]\> `Const` getCurrentTab(): getPrimaryTabId(`tab`): `string` | Name | Type | | :- | :-- | | `tab` | `Pick`<, `"uuid"`\> | `string` `Const` getTab(`idx`): | Name | Type | | :- | :- | | `idx` | `number` \| | getTabId(`tab`): `string` Return the unique identifier for the given tab | Name | Type | | :- | :-- | | `tab` | `Pick`<, `"uuid"`\> | `string` hasContent<`T`\>(`resource`): resource is Content<T\> | Name | Type | | : | : | | `T` | extends <`void`, `T`\> | | Name | Type | | : | : | | `resource` | \| <`T`\> \| <`T`\> | resource is Content<T\> hasDisplayName(`resource`): resource is WithDisplayName | Name | Type | | : | :-- | | `resource` | <`void`\> | resource is WithDisplayName hasSourceReferences(`response`): response is Required<WithSourceReferences\> | Name | Type | | : | :-- | | `response` | `Partial`<\> | response is Required<WithSourceReferences\> hideReplayOutput(): `boolean` `boolean` i18nFromMap(`map`): `string` | Name | Type | | :- | :- | | `map` | `Record`<`string`, `string`\> | `string` initializeSession(`tab`): `Promise`<`void`\> Initialize the session for the given `Tab`. Await the response if you need to block until all session initializers have

| Name | Type | | :- | :- | | `tab` | | `Promise`<`void`\> `Const` internalBeCarefulExec(`commandUntrimmed`, `execOptions?`): `Promise`<<`any`\> \| <`number`\>\> | Name | Type | | :-- | :-- | | `commandUntrimmed` | `string` | | `execOptions` | | `Promise`<<`any`\> \| <`number`\>\> `Const` internalBeCarefulPExec<`T`\>(`command`, `execOptions?`): `Promise`<`T`\> Programmatic exec, as opposed to human typing and hitting enter | Name | Type | | : | : | | `T` | extends <`any`\> | | Name | Type | | :- | :-- | | `command` | `string` | | `execOptions?` | | `Promise`<`T`\> is404<`Code`\>(`err`): err is CodedError<404\> | Name | Type | | :-- | :- | | `Code` | `number` | | Name | Type | | :- | : | | `err` | `string` \| `object` \| `Error` | err is CodedError<404\> is404or409<`Code`\>(`err`): err is CodedError<404 \| 409\> | Name | Type | | :-- | :- | | `Code` | `number` | | Name | Type | | :- | : | | `err` | `string` \| `object` \| `Error` | err is CodedError<404 \| 409\> is409<`Code`\>(`err`): err is CodedError<409\> | Name | Type | | :-- | :- | | `Code` | `number` | | Name | Type | | :- | : | | `err` | `string` \| `object` \| `Error` | err is CodedError<409\> isAbortableResponse(`entity`): entity is AbortableResponse<ScalarResponse<Row\>\> | Name | Type | | :- | :- | | `entity` | `Entity`<`void`, , <`void`\>\> | entity is AbortableResponse<ScalarResponse<Row\>\> isButton<`T`\>(`mode`): mode is Button<T\> | Name | Type | | : | : | | `T` | extends <`void`, `T`\> = <`void`\> | | Name | Type | | :-- | :- | | `mode` | <`T`\> \| <`T`\> \| <`T`\> | mode is Button<T\> isCodedError<`Code`\>(`err`): err is CodedError<Code\> | Name | Type | | :-- | :- | | `Code` | `number` | | Name | Type | | :- | : | | `err` | `string` \| `object` \| `Error` | err is CodedError<Code\> isCommandHandlerWithEvents<`T`, `O`\>(`evaluator`): evaluator is CommandHandlerWithEvents<T, O\> | Name | Type | | : | :-- | | `T` | extends <`any`\> | | `O` | extends | | Name | Type | | :- | : | | `evaluator` | <`T`, `O`\> | evaluator is CommandHandlerWithEvents<T, O\> isCommandStringContent<`T`\>(`content`): content is CommandStringContent | Name | Type | | : | : | | `T` | extends <`void`, `T`\> | | Name | Type | | :-- | :- | | `content` | <`void`\> \| \| <`T`\> \| <`T`\> | content is CommandStringContent isCommentaryResponse(`entity`): entity is CommentaryResponse | Name | Type | | :- | :- | | `entity` | `Entity`<`void`, , <`void`\>\> | entity is CommentaryResponse isCommentarySectionBreak(`entity`): `boolean` is this commentary reponse be able to treated as a section break | Name | Type | | :- | :- | | `entity` | `Entity`<`void`, , <`void`\>\> | `boolean` `Const` isCursorMovement(`evt`): `boolean` does the given keycode correspond to a cursor movement? | Name | Type | | :- | :-- | | `evt` | `KeyboardEvent` | `boolean` isDescriptionList(`content`): content is DescriptionList | Name | Type | | :-- | : | | `content` | | content is DescriptionList isError(`response`): response is ErrorLike | Name | Type | | : | :- | | `response` | <`any`\> | response is ErrorLike isExecutableClient(): `boolean` Is the current client running in an executable mode? `boolean` isFunctionContent<`T`\>(`content`): content is FunctionContent<T\> | Name | Type | | : | : | | `T` | extends <`void`, `T`\> = <`void`\> | | Name | Type | | :-- | :- | | `content` | `Entity`<`void`, , <`void`\>\> \| <`T`\> \| <`T`\> | content is FunctionContent<T\> isLink(`link`): link is Link | Name | Type | | :-- | :- | | `link` | | link is Link isLinkWithCommand(`link`): link is Label & Command | Name | Type | | :-- | :- | | `link` | | link is Label & Command isLinkWithHref(`link`): link is Label & Href | Name | Type | | :-- | :- | | `link` | | link is Label & Href isMarkdownResponse(`entity`): entity is MarkdownResponse | Name | Type | | :- | :- | | `entity` | `Entity`<`void`, , <`void`\>\> | entity is MarkdownResponse isMessageWithCode(`msg`): msg is MessageWithCode | Name | Type | | :- | :- | | `msg` | `UsageLike` | msg is MessageWithCode isMessageWithUsageModel(`msg`): msg is MessageWithUsageModel | Name | Type | | :- | :- | | `msg` | `UsageLike` | msg is MessageWithUsageModel isMixedResponse(`response`): response is MixedResponse | Name | Type | | : | :- | | `response` | `Entity`<`void`, , <`void`\>\> | response is MixedResponse isMultiModalResponse(`entity`): entity is MultiModalResponse<ResourceWithMetadata<void\>\> | Name | Type | | :- | :- | | `entity` | `Entity`<`void`, , <`void`\>\> | entity is MultiModalResponse<ResourceWithMetadata<void\>\> isNavResponse(`entity`): entity is NavResponse | Name | Type | | :- | :- | | `entity` | `Entity`<`void`, , <`void`\>\> | entity is NavResponse isNewSplitRequest(`req`): req is TabLayoutModificationResponse<NewSplitRequest\> | Name | Type | | :- | : | | `req` | <\> | req is TabLayoutModificationResponse<NewSplitRequest\> isOfflineClient(): `boolean` Is the current client running in offline/disconnected mode? `boolean` `Const` isPopup(): `boolean` are we operating in popup mode? `boolean` isRadioTable(`response`): response is RadioTable | Name | Type | | : | :- | | `response` | <`any`\> | response is RadioTable isRandomErrorResponse1(`response`): response is RandomErrorResponse1 | Name | Type | | : | :- | | `response` | `Entity`<`void`, , <`void`\>\> | response is RandomErrorResponse1 isRandomErrorResponse2(`response`): response is RandomErrorResponse2 | Name | Type | | : | :- | | `response` | `Entity`<`void`, , <`void`\>\> | response is RandomErrorResponse2 isReactProvider(`entity`): entity is ReactProvider | Name | Type | | :- | :-- | | `entity` | `ScalarLike`<<`void`\>\> | entity is ReactProvider isReactResponse(`entity`): entity is ReactResponse | Name | Type | | :- | :- | | `entity` | `Entity`<`void`, , <`void`\>\> | entity is ReactResponse isReadOnlyClient(): `boolean` Is the current client running in readonly mode? `boolean` isResizable(`job`): job is Resizable | Name | Type | | :- | :- | | `job` | `Partial`<\> | job is Resizable isResourceByReference<`T`\>(`spec`): spec is T | Name | Type | | : | :- | | `T` | extends <`void`, `T`\> | | Name | Type | | :-- | :- | | `spec` | `Entity`<`void`, , <`void`\>\> \| `T` \| <`any`\> | spec is T isResourceWithMetadata(`spec`): spec is ResourceWithMetadata<void\> | Name | Type | | :-- | :- | | `spec` | `Entity`<`void`, , <`void`\>\> | spec is ResourceWithMetadata<void\> isScalarContent<`T`\>(`entity`): entity is ScalarContent<ScalarResource\> | Name | Type | | : | : | | `T` | extends <`void`, `T`\> | | Name | Type | | :- | :-- | | `entity` | `ScalarLike`<`T`\> | entity is ScalarContent<ScalarResource\> isScalarResponse(`response`): response is ScalarResponse<Row\> | Name | Type | | : | :- | | `response` | `Entity`<`void`, , <`void`\>\> | response is ScalarResponse<Row\> isStringDiffContent<`T`\>(`entity`): entity is StringDiffContent<SupportedStringContent\> | Name | Type | | : | : | | `T` | extends <`void`, `T`\> | | Name | Type | | :- | :- | | `entity` | `Entity`<`void`, , <`void`\>\> \| <`T`\> \| <`T`\> | entity is StringDiffContent<SupportedStringContent\> isStringResponse(`response`): response is string | Name | Type | | : | :-- | | `response` | | response is string isStringWithOptionalContentType<`T`\>(`entity`): entity is StringContent<SupportedStringContent\> | Name | Type | | : | : | | `T` | extends <`void`, `T`\> | | Name | Type | | :- | :- | | `entity` | `Entity`<`void`, , <`void`\>\> \| <`T`\> \| <`T`\> | entity is StringContent<SupportedStringContent\> isSupportedContentType(`contentType`): `boolean` | Name | Type | | : | :- | | `contentType` | `string` | `boolean` isSupportedToolbarTextType(`type`): type is ToolbarTextType | Name | Type | | :-- | :- | | `type` | `string` | type is ToolbarTextType isSuspendable(`watch`): () => `void` | Name | Type | | : | : | | `watch` | `Partial`<\> | `fn` (): `void` `void` isTabLayoutModificationResponse(`entity`): entity is TabLayoutModificationResponse<NewSplitRequest\> | Name | Type | | :- | :- | | `entity` | `Entity`<`void`, , <`void`\>\> | entity is TabLayoutModificationResponse<NewSplitRequest\> isTable<`C`\>(`model`): model is Table<Row\> | Name | | : | | `C` | | Name | Type | | : | :-- | | `model` | `Entity`<`void`, , <`void`\>\> \| <`C`\> | model is Table<Row\> isTableWithCount(`table`): `boolean` | Name | Type | | : | :- | | `table` | <\> | `boolean` isTableWithTimestamp(`table`): `boolean` | Name | Type | | : | :- | | `table` | <\> | `boolean` isTopLevelTab(`tab`): `boolean` | Name | Type | | :- | :-- | | `tab` | `Pick`<, `"uuid"`\> | `boolean` isUsageError(`error`): error is UsageErrorLike | Name | Type | | : | : | | `error` | `Entity`<`void`, , <`void`\>\> \| `UsageErrorLike` | error is UsageErrorLike isViewButton<`T`\>(`button`): button is ViewButton<T\> | Name | Type | | : | :-- | | `T` | <`void`\> | | Name | Type | | :- | :-- | | `button` | <`T`\> | button is ViewButton<T\> isWatchable(`model`): model is string & Watchable & number & Watchable & false & Watchable & true & Watchable & HTMLElement & Watchable & Error & Watchable & MarkdownResponse & Watchable & ReactResponse & Watchable & MixedResponse & Watchable & CommentaryResponse & Watchable & TabLayoutModificationResponse<NewSplitRequest\> & Watchable & XtermResponse & Watchable & RandomErrorResponse1 & Watchable & RandomErrorResponse2 & Watchable & Table<Row\> & Partial<WithSourceReferences\> & Watchable & Abortable & Object & Watchable & ResourceWithMetadata<void\> & Watchable & ResourceWithMetadata<void\> & View<ResourceWithMetadata<void\>\> & Watchable & NavResponse & Watchable & RadioTable & Watchable & UsageModel & Watchable & RawResponse<void\> & Watchable & ResourceWithMetadata<void\>[] & Watchable | Name | Type | | : | :- | | `model` | `string` & `Partial`<\> & `number` & `Partial`<\> & `false` & `Partial`<\> & `true` & `Partial`<\> & `HTMLElement` & `Partial`<\> & `Error` & `Partial`<\> & `MarkdownResponse` & `Partial`<\> & & `Partial`<\> & & `Partial`<\> & & `Partial`<\> & <\> & `Partial`<\> & & `Partial`<\> & `RandomErrorResponse1` & `Partial`<\> & `RandomErrorResponse2` & `Partial`<\> & <\> & `Partial`<\> & `Partial`<\> & & { `response`: <\> } & `Partial`<\> & <`void`\> & `Partial`<\> & <`void`\> & `View`<<`void`\>\> & `Partial`<\> & & `Partial`<\> & & `Partial`<\> & & `Partial`<\> & <`void`\> & `Partial`<\> & <`void`\>\> | model is string & Watchable & number & Watchable & false & Watchable & true & Watchable & HTMLElement & Watchable & Error & Watchable & MarkdownResponse & Watchable & ReactResponse & Watchable & MixedResponse & Watchable & CommentaryResponse & Watchable & TabLayoutModificationResponse<NewSplitRequest\> & Watchable & XtermResponse & Watchable & RandomErrorResponse1 & Watchable & RandomErrorResponse2 & Watchable & Table<Row\> & Partial<WithSourceReferences\> & Watchable & Abortable & Object & Watchable & ResourceWithMetadata<void\> & Watchable & ResourceWithMetadata<void\> & View<ResourceWithMetadata<void\>\> & Watchable & NavResponse & Watchable & RadioTable & Watchable & UsageModel & Watchable & RawResponse<void\> & Watchable & ResourceWithMetadata<void\>[] & Watchable isXtermErrorResponse(`entity`): `boolean` | Name | Type | | :- | :- | | `entity` | `Entity`<`void`, , <`void`\>\> | `boolean` isXtermResponse(`entity`): entity is XtermResponse | Name | Type | | :- | :- | | `entity` | `Entity`<`void`, , <`void`\>\> | entity is XtermResponse maybeKuiLink(`link`): `string` | Name | Type | | :-- | :- | | `link` | `string` | `string` offQuit(`handler`): `void` | Name | Type | | :-- | :-- | | `handler` | () => `void` | `void` onQuit(`handler`): `void` | Name | Type | | :-- | :-- | | `handler` | () => `void` | `void` pexecInCurrentTab(`command`, `topLevelTab?`, `isInternalCallpath?`, `incognito?`, `execUUID?`): `Promise`<<`any`\>\> Execute the given command in the current (or given)

| Name | Type | Default value | Description | | :- | :- | : | : | | `command` | `string` | `undefined` | - | | `topLevelTab?` | | `undefined` | - | | `isInternalCallpath` | `boolean` | `false` | - | | `incognito` | `boolean` | `false` | Execute the command quietly but do not display the result in the Terminal | | `execUUID?` | `string` | `undefined` | - | `Promise`<<`any`\>\> `Const` pluginUserHome(): `Promise`<`string`\> Home for user-installed plugins `Promise`<`string`\> radioTableAddHint(`row`, `cidx`, `newHints`): `void` Add the hint to the given RadioTableCell | Name | Type | | : | : | | `row` | | | `cidx` | `number` | | `newHints` | [] | `void` radioTableCellToString(`cell`, `useTitle?`): `string` Project the string value of the given `cell` | Name | Type | Default value | | : | : | : | | `cell` | | `undefined` | | `useTitle` | `boolean` | `false` | `string` radioTableHintsAsCss(`cell`): `string` | Name | Type | | :-- | : | | `cell` | | `string` registerBadge<`Resource`\>(`registration`): `void` Register a new badge | Name | Type | | : | :- | | `Resource` | extends <`void`, `Resource`\> | | Name | Type | | :- | : | | `registration` | <`Resource`\> | `void` registerMode<`Resource`\>(`registration`): `void` Register a new mode | Name | Type | | : | :- | | `Resource` | extends <`void`, `Resource`\> | | Name | Type | | :- | :- | | `registration` | <`Resource`\> | `void` `Const` registerModeWhen<`Resource`\>(`when`): (`mode`: <`Resource`\>) => `void` | Name | Type | | : | :- | | `Resource` | extends <`void`, `Resource`\> | | Name | Type | | :-- | :-- | | `when` | <`Resource`\> | `fn` (`mode`): `void` | Name | Type | | :-- | : | | `mode` | <`Resource`\> | `void` registerTabCompletionEnumerator(`enumerator`, `priority?`): `void` A plugin has offered a tab completion Enumerator | Name | Type | Default value | | :-- | :-- | : | | `enumerator` | `Enumerator` | `undefined` | | `priority` | `number` | `0` | `void` registerTabState(`registration`): `void` | Name | Type | | :- | : | | `registration` | `TabStateRegistration` | `void` renderUsage(`_`): `string` | Name | Type | | : | :- | | `_` | | `string` sameRow(`A`, `B`): `boolean` Are the two Rows the same? | Name | Type | | : | :- | | `A` | | | `B` | | `boolean` `Const` sameTab(`tab1`, `tab2`): `boolean` | Name | Type | | :-- | :- | | `tab1` | | | `tab2` | | `boolean` `Const` setEvaluatorImpl(`impl`): `void` | Name | Type | | :-- | :-- | | `impl` | | `void` `Const` split(`str`, `removeOuterQuotes?`, `removeInlineOuterQuotes?`, `splitBy?`, `startIdx?`, `endIdx?`): `string`[] | Name | Type | Default value | | : | :-- | : | | `str` | `string` | `undefined` | | `removeOuterQuotes` | `boolean` | `true` | | `removeInlineOuterQuotes` | `boolean` | `false` | | `splitBy?` | `string` | `undefined` | | `startIdx` | `number` | `0` | | `endIdx` | `number` | `str.length` | `string`[] splitFor(`topLevelTab`): We need to find the instance of the Split that has a REPL controller if given a `topLevelTab` that is already a Split, then we're "good to go" if we are given an actual top-level tab (i.e. not a split), then we need to find the first Split child of that given tab if we aren't given a tab as input, then we search from `document` | Name | Type | | : | :- |