astro
Version:
Astro is a modern site builder with web best practices, performance, and DX front-of-mind.
39 lines (38 loc) • 1.92 kB
TypeScript
import type { ComponentInstance } from '../../types/astro.js';
import type { RewritePayload } from '../../types/public/common.js';
import type { RouteData, SSRResult } from '../../types/public/internal.js';
import type { SSRManifest } from '../app/types.js';
import type { TryRewriteResult } from '../base-pipeline.js';
import { Pipeline } from '../base-pipeline.js';
import { type DefaultRouteParams } from '../routing/default.js';
import type { BuildInternals } from './internal.js';
import type { SinglePageBuiltModule, StaticBuildOptions } from './types.js';
/**
* The build pipeline is responsible to gather the files emitted by the SSR build and generate the pages by executing these files.
*/
export declare class BuildPipeline extends Pipeline {
#private;
internals: BuildInternals | undefined;
options: StaticBuildOptions | undefined;
readonly manifest: SSRManifest;
readonly defaultRoutes: Array<DefaultRouteParams>;
getName(): string;
getSettings(): import("../../types/astro.js").AstroSettings;
getOptions(): StaticBuildOptions;
getInternals(): BuildInternals;
private constructor();
getRoutes(): RouteData[];
static create({ manifest }: Pick<BuildPipeline, 'manifest'>): BuildPipeline;
setInternals(internals: BuildInternals): void;
setOptions(options: StaticBuildOptions): void;
headElements(routeData: RouteData): Pick<SSRResult, 'scripts' | 'styles' | 'links'>;
componentMetadata(): void;
/**
* It collects the routes to generate during the build.
* It returns a map of page information and their relative entry point as a string.
*/
retrieveRoutesToGenerate(): Set<RouteData>;
getComponentByRoute(routeData: RouteData): Promise<ComponentInstance>;
getModuleForRoute(route: RouteData): Promise<SinglePageBuiltModule>;
tryRewrite(payload: RewritePayload, request: Request): Promise<TryRewriteResult>;
}