diff --git a/docs/development/core/public/kibana-plugin-public.app.md b/docs/development/core/public/kibana-plugin-public.app.md
index c500c080a5feb..60cac357d1fe0 100644
--- a/docs/development/core/public/kibana-plugin-public.app.md
+++ b/docs/development/core/public/kibana-plugin-public.app.md
@@ -16,6 +16,5 @@ export interface App extends AppBase
| Property | Type | Description |
| --- | --- | --- |
-| [chromeless](./kibana-plugin-public.app.chromeless.md) | boolean
| Hide the UI chrome when the application is mounted. Defaults to false
. Takes precedence over chrome service visibility settings. |
| [mount](./kibana-plugin-public.app.mount.md) | (context: AppMountContext, params: AppMountParameters) => AppUnmount | Promise<AppUnmount>
| A mount function called when the user navigates to this app's route. |
diff --git a/docs/development/core/public/kibana-plugin-public.app.chromeless.md b/docs/development/core/public/kibana-plugin-public.appbase.chromeless.md
similarity index 67%
rename from docs/development/core/public/kibana-plugin-public.app.chromeless.md
rename to docs/development/core/public/kibana-plugin-public.appbase.chromeless.md
index dc1e19bab80b2..ddbf9aafbd28a 100644
--- a/docs/development/core/public/kibana-plugin-public.app.chromeless.md
+++ b/docs/development/core/public/kibana-plugin-public.appbase.chromeless.md
@@ -1,8 +1,8 @@
-[Home](./index.md) > [kibana-plugin-public](./kibana-plugin-public.md) > [App](./kibana-plugin-public.app.md) > [chromeless](./kibana-plugin-public.app.chromeless.md)
+[Home](./index.md) > [kibana-plugin-public](./kibana-plugin-public.md) > [AppBase](./kibana-plugin-public.appbase.md) > [chromeless](./kibana-plugin-public.appbase.chromeless.md)
-## App.chromeless property
+## AppBase.chromeless property
Hide the UI chrome when the application is mounted. Defaults to `false`. Takes precedence over chrome service visibility settings.
diff --git a/docs/development/core/public/kibana-plugin-public.appbase.id.md b/docs/development/core/public/kibana-plugin-public.appbase.id.md
index 57daa0c94bdf6..89dd32d296104 100644
--- a/docs/development/core/public/kibana-plugin-public.appbase.id.md
+++ b/docs/development/core/public/kibana-plugin-public.appbase.id.md
@@ -4,6 +4,8 @@
## AppBase.id property
+The unique identifier of the application
+
Signature:
```typescript
diff --git a/docs/development/core/public/kibana-plugin-public.appbase.md b/docs/development/core/public/kibana-plugin-public.appbase.md
index e23e3212639fa..fc6c9a163f2cd 100644
--- a/docs/development/core/public/kibana-plugin-public.appbase.md
+++ b/docs/development/core/public/kibana-plugin-public.appbase.md
@@ -16,11 +16,13 @@ export interface AppBase
| Property | Type | Description |
| --- | --- | --- |
| [capabilities](./kibana-plugin-public.appbase.capabilities.md) | Partial<Capabilities>
| Custom capabilities defined by the app. |
+| [chromeless](./kibana-plugin-public.appbase.chromeless.md) | boolean
| Hide the UI chrome when the application is mounted. Defaults to false
. Takes precedence over chrome service visibility settings. |
| [euiIconType](./kibana-plugin-public.appbase.euiicontype.md) | string
| A EUI iconType that will be used for the app's icon. This icon takes precendence over the icon
property. |
| [icon](./kibana-plugin-public.appbase.icon.md) | string
| A URL to an image file used as an icon. Used as a fallback if euiIconType
is not provided. |
-| [id](./kibana-plugin-public.appbase.id.md) | string
| |
+| [id](./kibana-plugin-public.appbase.id.md) | string
| The unique identifier of the application |
| [order](./kibana-plugin-public.appbase.order.md) | number
| An ordinal used to sort nav links relative to one another for display. |
| [status](./kibana-plugin-public.appbase.status.md) | AppStatus
| The status of the application. |
+| [statusUpdater$](./kibana-plugin-public.appbase.statusupdater_.md) | Observable<AppStatusUpdater>
| An [AppStatusUpdater](./kibana-plugin-public.appstatusupdater.md) observable that can be used to update the application [AppUpdatableFields](./kibana-plugin-public.appupdatablefields.md) at runtime. |
| [title](./kibana-plugin-public.appbase.title.md) | string
| The title of the application. |
| [tooltip](./kibana-plugin-public.appbase.tooltip.md) | string
| A tooltip shown when hovering over app link. |
diff --git a/docs/development/core/public/kibana-plugin-public.appbase.statusupdater_.md b/docs/development/core/public/kibana-plugin-public.appbase.statusupdater_.md
new file mode 100644
index 0000000000000..41cc8d0129404
--- /dev/null
+++ b/docs/development/core/public/kibana-plugin-public.appbase.statusupdater_.md
@@ -0,0 +1,13 @@
+
+
+[Home](./index.md) > [kibana-plugin-public](./kibana-plugin-public.md) > [AppBase](./kibana-plugin-public.appbase.md) > [statusUpdater$](./kibana-plugin-public.appbase.statusupdater_.md)
+
+## AppBase.statusUpdater$ property
+
+An [AppStatusUpdater](./kibana-plugin-public.appstatusupdater.md) observable that can be used to update the application [AppUpdatableFields](./kibana-plugin-public.appupdatablefields.md) at runtime.
+
+Signature:
+
+```typescript
+statusUpdater$?: Observable;
+```
diff --git a/docs/development/core/public/kibana-plugin-public.applicationsetup.md b/docs/development/core/public/kibana-plugin-public.applicationsetup.md
index 7f63e742e9ffc..6635a9d49256f 100644
--- a/docs/development/core/public/kibana-plugin-public.applicationsetup.md
+++ b/docs/development/core/public/kibana-plugin-public.applicationsetup.md
@@ -16,6 +16,6 @@ export interface ApplicationSetup
| Method | Description |
| --- | --- |
| [register(app)](./kibana-plugin-public.applicationsetup.register.md) | Register an mountable application to the system. |
-| [registerAppStatusUpdater(statusUpdater$)](./kibana-plugin-public.applicationsetup.registerappstatusupdater.md) | TODO |
+| [registerAppStatusUpdater(statusUpdater$)](./kibana-plugin-public.applicationsetup.registerappstatusupdater.md) | Register an application status updater that can be used to change the [AppUpdatableFields](./kibana-plugin-public.appupdatablefields.md) fields of all applications at runtime. |
| [registerMountContext(contextName, provider)](./kibana-plugin-public.applicationsetup.registermountcontext.md) | Register a context provider for application mounting. Will only be available to applications that depend on the plugin that registered this context. |
diff --git a/docs/development/core/public/kibana-plugin-public.applicationsetup.registerappstatusupdater.md b/docs/development/core/public/kibana-plugin-public.applicationsetup.registerappstatusupdater.md
index a05b167b77be2..9d99f8ddda29e 100644
--- a/docs/development/core/public/kibana-plugin-public.applicationsetup.registerappstatusupdater.md
+++ b/docs/development/core/public/kibana-plugin-public.applicationsetup.registerappstatusupdater.md
@@ -4,7 +4,7 @@
## ApplicationSetup.registerAppStatusUpdater() method
-TODO
+Register an application status updater that can be used to change the [AppUpdatableFields](./kibana-plugin-public.appupdatablefields.md) fields of all applications at runtime.
Signature:
diff --git a/docs/development/core/public/kibana-plugin-public.appstatus.md b/docs/development/core/public/kibana-plugin-public.appstatus.md
new file mode 100644
index 0000000000000..d7f95414f7500
--- /dev/null
+++ b/docs/development/core/public/kibana-plugin-public.appstatus.md
@@ -0,0 +1,22 @@
+
+
+[Home](./index.md) > [kibana-plugin-public](./kibana-plugin-public.md) > [AppStatus](./kibana-plugin-public.appstatus.md)
+
+## AppStatus enum
+
+Accessibility status of an application.
+
+Signature:
+
+```typescript
+export declare enum AppStatus
+```
+
+## Enumeration Members
+
+| Member | Value | Description |
+| --- | --- | --- |
+| accessible | 0
| Application is accessible. |
+| inaccessible | 2
| Application is not accessible. |
+| inaccessibleWithDisabledNavLink | 1
| Application is not accessible, but visible in an inactive state in navigation. |
+
diff --git a/docs/development/core/public/kibana-plugin-public.appstatusupdater.md b/docs/development/core/public/kibana-plugin-public.appstatusupdater.md
new file mode 100644
index 0000000000000..3b431df2c3365
--- /dev/null
+++ b/docs/development/core/public/kibana-plugin-public.appstatusupdater.md
@@ -0,0 +1,13 @@
+
+
+[Home](./index.md) > [kibana-plugin-public](./kibana-plugin-public.md) > [AppStatusUpdater](./kibana-plugin-public.appstatusupdater.md)
+
+## AppStatusUpdater type
+
+Status updater for applications.
+
+Signature:
+
+```typescript
+export declare type AppStatusUpdater = (app: AppBase) => Partial | undefined;
+```
diff --git a/docs/development/core/public/kibana-plugin-public.appupdatablefields.md b/docs/development/core/public/kibana-plugin-public.appupdatablefields.md
new file mode 100644
index 0000000000000..97f2fe85d8ad0
--- /dev/null
+++ b/docs/development/core/public/kibana-plugin-public.appupdatablefields.md
@@ -0,0 +1,13 @@
+
+
+[Home](./index.md) > [kibana-plugin-public](./kibana-plugin-public.md) > [AppUpdatableFields](./kibana-plugin-public.appupdatablefields.md)
+
+## AppUpdatableFields type
+
+Defines the list of fields that can be updated via an [AppStatusUpdater](./kibana-plugin-public.appstatusupdater.md).
+
+Signature:
+
+```typescript
+export declare type AppUpdatableFields = Pick;
+```
diff --git a/docs/development/core/public/kibana-plugin-public.md b/docs/development/core/public/kibana-plugin-public.md
index cec307032094e..f2468910d1e76 100644
--- a/docs/development/core/public/kibana-plugin-public.md
+++ b/docs/development/core/public/kibana-plugin-public.md
@@ -19,6 +19,12 @@ The plugin integrates with the core system via lifecycle events: `setup`
| [ToastsApi](./kibana-plugin-public.toastsapi.md) | Methods for adding and removing global toast messages. |
| [UiSettingsClient](./kibana-plugin-public.uisettingsclient.md) | |
+## Enumerations
+
+| Enumeration | Description |
+| --- | --- |
+| [AppStatus](./kibana-plugin-public.appstatus.md) | Accessibility status of an application. |
+
## Interfaces
| Interface | Description |
@@ -96,7 +102,9 @@ The plugin integrates with the core system via lifecycle events: `setup`
| Type Alias | Description |
| --- | --- |
+| [AppStatusUpdater](./kibana-plugin-public.appstatusupdater.md) | Status updater for applications. |
| [AppUnmount](./kibana-plugin-public.appunmount.md) | A function called when an application should be unmounted from the page. This function should be synchronous. |
+| [AppUpdatableFields](./kibana-plugin-public.appupdatablefields.md) | Defines the list of fields that can be updated via an [AppStatusUpdater](./kibana-plugin-public.appstatusupdater.md). |
| [ChromeBreadcrumb](./kibana-plugin-public.chromebreadcrumb.md) | |
| [ChromeHelpExtension](./kibana-plugin-public.chromehelpextension.md) | |
| [ChromeNavLinkUpdateableFields](./kibana-plugin-public.chromenavlinkupdateablefields.md) | |
diff --git a/src/core/public/public.api.md b/src/core/public/public.api.md
index b8ede70bc843d..f898316fbd0f2 100644
--- a/src/core/public/public.api.md
+++ b/src/core/public/public.api.md
@@ -16,22 +16,21 @@ import { UserProvidedValues as UserProvidedValues_2 } from 'src/core/server/type
// @public
export interface App extends AppBase {
- chromeless?: boolean;
mount: (context: AppMountContext, params: AppMountParameters) => AppUnmount | Promise;
}
// @public (undocumented)
export interface AppBase {
capabilities?: Partial;
+ chromeless?: boolean;
euiIconType?: string;
icon?: string;
- // (undocumented)
id: string;
// @internal
legacy?: boolean;
order?: number;
- // Warning: (ae-forgotten-export) The symbol "AppStatus" needs to be exported by the entry point index.d.ts
status?: AppStatus;
+ statusUpdater$?: Observable;
title: string;
tooltip?: string;
}
@@ -39,7 +38,6 @@ export interface AppBase {
// @public (undocumented)
export interface ApplicationSetup {
register(app: App): void;
- // Warning: (ae-forgotten-export) The symbol "AppStatusUpdater" needs to be exported by the entry point index.d.ts
registerAppStatusUpdater(statusUpdater$: Observable): void;
registerMountContext(contextName: T, provider: IContextProvider): void;
}
@@ -80,9 +78,22 @@ export interface AppMountParameters {
element: HTMLElement;
}
+// @public
+export enum AppStatus {
+ accessible = 0,
+ inaccessible = 2,
+ inaccessibleWithDisabledNavLink = 1
+}
+
+// @public
+export type AppStatusUpdater = (app: AppBase) => Partial | undefined;
+
// @public
export type AppUnmount = () => void;
+// @public
+export type AppUpdatableFields = Pick;
+
// @public
export interface Capabilities {
[key: string]: Record>;