import type { IStageTypeConfig } from '../domain';
import type { IManagedDeliveryPlugin, IResourceKindConfig } from '../managed';
import type { SearchResultType } from '../search';
export interface IDeckPlugin {
/** Custom Stage UI (configuration and execution details) */
stages?: IStageTypeConfig[];
/** Custom Preconfigured Job Stage UI (configuration and execution details) */
preconfiguredJobStages?: IStageTypeConfig[];
/** DEPRECATED - Custom managed resource kinds */
resourceKinds?: IResourceKindConfig[];
/** Managed Delivery hooks */
managedDelivery?: IManagedDeliveryPlugin;
/** Help Text for use in */
help?: {
[helpKey: string]: string;
};
/** Custom global search types */
search?: SearchResultType[];
initialize?(plugin: IDeckPlugin): void;
}
/** Given a plugin, registers the plugin's extensions with Deck registries */
export declare function registerPluginExtensions(plugin: IDeckPlugin): PromiseLike;