export { DeploymentVersion as IVersion, VersionId, DeploymentStatus } from "../Types";
export declare type ProjectId = string;
export declare type DeploymentId = string;
/**
 * A pair of some entity from the blueprint (e.g. a File-Store), and another representation of it
 * such as an AWS S3 bucket, with some extra-data regarding that pair (as display name)
 */
export interface EntityPair<TBlueprint extends object, TPhysical> {
    /**
   * The blueprint entity (like File-Store)
   */
    blueprint: TBlueprint;
    /**
   * An entity it is paired with (like AWS S3 bucket)
   */
    physical: TPhysical;
    /**
   * A display name that represents this entity
   */
    displayName: string;
}
/**
 * Create a pair of some entity from the blueprint (e.g. a File-Store), and another representation of it
 * such as an AWS S3 bucket
 * @param blueprint The blueprint entity (like File-Store)
 * @param physical An entity it is paired with (like AWS S3 bucket)
 * @param displayName A display name that represents this entity
 * @returns A new entity pair with the provided data
 */
export declare function mkEntityPair<TBlueprint extends object, TPhysical>(blueprint: TBlueprint, physical: TPhysical, displayName: string): EntityPair<TBlueprint, TPhysical>;
