import { SyncHook, AsyncSeriesWaterfallHook, SyncWaterfallHook, AsyncSeriesHook, AsyncParallelHook } from 'tapable'; import type { HeftConfiguration, IHeftTaskPlugin, IHeftTaskSession } from '@rushstack/heft'; import type { _IManifestsFileMetadata as IManifestsFileMetadata } from '@msinternal/spfx-manifests-file'; import type { IDevDeployOptions, IDevDeployData } from './DevDeployInterfaces'; /** * @public */ export declare class DevDeployHooks { /** * Initialize */ readonly init: AsyncParallelHook; /** * Perform any pre processing such as delete any existing deployment info json, clean up dist folder, etc. */ readonly preProcess: SyncHook; /** * Gets the files to be deployed to the CDN */ readonly getFiles: AsyncSeriesWaterfallHook; /** * Gets the name of the folder in the container into which files should be uploaded */ readonly getContainerFolderName: SyncWaterfallHook; /** * Gets the name of the Azure storage account */ readonly getStorageAccountName: SyncWaterfallHook; /** * Gets the name of the container */ readonly getContainerName: SyncWaterfallHook; /** * Gets the URL to the container that will be used when reading files */ readonly getContainerUrlForRead: SyncWaterfallHook; /** * Gets a SAS for the storage container */ readonly getStorageSas: AsyncSeriesWaterfallHook; /** * Returns true if the deployment is in a prod environment */ readonly isProd: SyncWaterfallHook; /** * Perform any post processing, usually print the deploy link, save deployment info json, collect library files, etc. */ readonly postProcess: AsyncSeriesHook; } /** * @public */ export interface IDevDeployPluginAccessorProperties { /** * @internal */ _manifestsJsFileMetadata?: IManifestsFileMetadata; } /** * @public */ export interface IDevDeployPluginAccessor { hooks: DevDeployHooks; properties: IDevDeployPluginAccessorProperties; } /** * @public */ export interface IDevDeployParameters { rush: boolean; maxRetries: number | undefined; } /** * @internal */ export default class DevDeployPlugin implements IHeftTaskPlugin { private _accessor; get accessor(): IDevDeployPluginAccessor; apply(taskSession: IHeftTaskSession, heftConfiguration: HeftConfiguration): void; private _installDefaultHooks; private _deployAsync; } //# sourceMappingURL=DevDeployPlugin.d.ts.map