import { Logger } from '@flxbl-io/sfp-logger'; import SfpPackage, { SfpPackageParams } from '../SfpPackage'; import { PackageCreationParams } from '../SfpPackageBuilder'; export declare abstract class CreatePackage { protected projectDirectory: string; protected sfpPackage: SfpPackage; protected packageCreationParams?: PackageCreationParams; protected logger?: Logger; protected params?: SfpPackageParams; private startTime; constructor(projectDirectory: string, sfpPackage: SfpPackage, packageCreationParams?: PackageCreationParams, logger?: Logger, params?: SfpPackageParams); exec(): Promise; abstract getTypeOfPackage(): any; abstract preCreatePackage(sfpPackage: SfpPackage): any; abstract createPackage(sfpPackage: SfpPackage): any; abstract postCreatePackage(sfpPackage: SfpPackage): any; private sendMetricsWhenSuccessfullyCreated; private writeDeploymentStepsToArtifact; private checkWhetherProvidedPackageIsEmpty; abstract isEmptyPackage(projectDirectory: string, packageDirectory: string): any; protected printEmptyArtifactWarning(): void; private printHeader; abstract printAdditionalPackageSpecificHeaders(): any; }