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 <HelpField /> */
    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<any>;
