UNPKG

1.05 kBTypeScriptView Raw
1import { DockerImageAssetLocation, DockerImageAssetSource, FileAssetLocation, FileAssetSource } from '../assets';
2import { ISynthesisSession } from '../construct-compat';
3import { Stack } from '../stack';
4/**
5 * Encodes information how a certain Stack should be deployed
6 */
7export interface IStackSynthesizer {
8 /**
9 * Bind to the stack this environment is going to be used on
10 *
11 * Must be called before any of the other methods are called.
12 */
13 bind(stack: Stack): void;
14 /**
15 * Register a File Asset
16 *
17 * Returns the parameters that can be used to refer to the asset inside the template.
18 */
19 addFileAsset(asset: FileAssetSource): FileAssetLocation;
20 /**
21 * Register a Docker Image Asset
22 *
23 * Returns the parameters that can be used to refer to the asset inside the template.
24 */
25 addDockerImageAsset(asset: DockerImageAssetSource): DockerImageAssetLocation;
26 /**
27 * Synthesize the associated stack to the session
28 */
29 synthesize(session: ISynthesisSession): void;
30}