import type { Environment } from '../config/environments.js'; export interface KeepGlbRequest { environment: Environment; token: string; gameId: string; /** The forger's URL for the generated mesh. */ glbUrl: string; /** The filename to store it under — the asset name plus `.glb`. */ filename: string; fetchImpl: typeof globalThis.fetch; log: (message: string) => void; } export interface KeptGlb { /** The project-storage URL the asset now points at. */ url: string; size: number; } /** Injectable in tests so the lane runs without a network, matching the `voxelize` seam. */ export type KeepGlb = (request: KeepGlbRequest) => Promise; export declare function reuploadGeneratedGlb(request: KeepGlbRequest): Promise;