import { Asset } from "./asset"; /** * An Archive represents a collection of named assets. */ export declare abstract class Archive { /** * Returns true if the given object is an instance of an Archive. This is designed to work even when * multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is Archive; } /** * AssetMap is a map of assets. */ export declare type AssetMap = { [name: string]: Asset | Archive; }; /** * An AssetArchive is an archive created from an in-memory collection of named assets or other archives. */ export declare class AssetArchive extends Archive { /** * A map of names to assets. */ readonly assets: Promise; constructor(assets: AssetMap | Promise); } /** * A FileArchive is a file-based archive, or a collection of file-based assets. This can be a raw directory or a * single archive file in one of the supported formats (.tar, .tar.gz, or .zip). */ export declare class FileArchive extends Archive { /** * The path to the asset file. */ readonly path: Promise; constructor(path: string | Promise); } /** * A RemoteArchive is a file-based archive fetched from a remote location. The URI's scheme dictates the * protocol for fetching the archive's contents: `file://` is a local file (just like a FileArchive), `http://` and * `https://` specify HTTP and HTTPS, respectively, and specific providers may recognize custom schemes. */ export declare class RemoteArchive extends Archive { /** * The URI where the archive lives. */ readonly uri: Promise; constructor(uri: string | Promise); }