41 lines
1.3 KiB
TypeScript
41 lines
1.3 KiB
TypeScript
import type { ViteManifest } from './prerender.mjs';
|
|
|
|
export interface ViteAssetClosure {
|
|
entryModule: string;
|
|
executableModules: string[];
|
|
modulePreloads: string[];
|
|
styles: string[];
|
|
viteAssets: string[];
|
|
}
|
|
|
|
export interface ArtifactContractFile {
|
|
path: string;
|
|
sha256: string;
|
|
}
|
|
|
|
export interface ArtifactContract extends ViteAssetClosure {
|
|
schema: 'portfolio-artifact-contract/v1';
|
|
buildId: string;
|
|
publicAssets: string[];
|
|
files: ArtifactContractFile[];
|
|
}
|
|
|
|
export interface BuildAuthority {
|
|
schema: 'portfolio-build-authority/v1';
|
|
viteManifest: ViteManifest;
|
|
artifactContract: ArtifactContract;
|
|
}
|
|
|
|
export function resolveViteAssetClosure(manifest: ViteManifest): ViteAssetClosure;
|
|
export function parseArtifactContract(input: unknown): ArtifactContract;
|
|
export function createArtifactContract(
|
|
closure: ViteAssetClosure,
|
|
publicManifest: { assets: ReadonlyArray<{ fileName: string }> },
|
|
digestByPath: Readonly<Record<string, string>>,
|
|
buildId: string,
|
|
): ArtifactContract;
|
|
export function serializeArtifactContract(contract: ArtifactContract): string;
|
|
export function createBuildAuthority(viteManifest: ViteManifest, artifactContract: ArtifactContract): BuildAuthority;
|
|
export function parseBuildAuthority(input: unknown): BuildAuthority;
|
|
export function serializeBuildAuthority(authority: BuildAuthority): string;
|