import type { ZephyrLegacyModuleFederationConfig, ZephyrModuleFederationConfig } from './module-federation.js';
import type { ZephyrBuildTarget } from './build-target.js';
export interface Snapshot {
    application_uid: string;
    version: string;
    version_url?: string;
    published_at?: number;
    snapshot_id: string;
    domain: string;
    type?: 'ssr' | 'csr';
    /** Typed artifact family carried with the immutable snapshot upload. */
    target: ZephyrBuildTarget;
    entrypoint?: string;
    uid: {
        build: string;
        app_name: string;
        repo: string;
        org: string;
    };
    git: {
        name?: string;
        email?: string;
        branch: string;
        commit: string;
        tags?: string[];
    };
    creator: {
        name: string;
        email: string;
    };
    createdAt: number;
    /** Legacy single-container federation config. */
    mfConfig?: ZephyrLegacyModuleFederationConfig;
    /** Every independently published config in a multi-container build. */
    mfConfigs?: ZephyrModuleFederationConfig[];
    assets: Record<string, SnapshotAsset>;
    ze_envs?: Record<string, string>;
    ze_envs_hash?: string;
    builder?: string;
    plugin_version?: string;
    worker_version?: string;
}
export interface SnapshotAsset {
    path: string;
    extname: string;
    hash: string;
    size: number;
}
export interface SnapshotMetadata {
    pages_url?: string;
    public_envs?: Record<string, string>;
    version?: string;
    build_id?: string;
    etag?: string;
    env?: {
        public?: Record<string, string>;
    };
}
//# sourceMappingURL=snapshot.d.ts.map