Home / Type/ AstroSettings Type — astro Architecture

AstroSettings Type — astro Architecture

Architecture documentation for the AstroSettings type/interface in astro.ts from the astro codebase.

Entity Profile

Dependency Diagram

graph TD
  1c631ba1_d2cf_2fb5_6e24_16fa4644daee["AstroSettings"]
  77e674d0_7ed2_12ca_5a29_41ceac44bdcd["astro.ts"]
  1c631ba1_d2cf_2fb5_6e24_16fa4644daee -->|defined in| 77e674d0_7ed2_12ca_5a29_41ceac44bdcd
  style 1c631ba1_d2cf_2fb5_6e24_16fa4644daee fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/astro/src/types/astro.ts lines 33–82

export interface AstroSettings {
	config: AstroConfig;
	adapter: AstroAdapter | undefined;
	prerenderer:
		| AstroPrerenderer
		| ((defaultPrerenderer: AstroPrerenderer) => AstroPrerenderer)
		| undefined;
	preferences: AstroPreferences;
	injectedRoutes: InternalInjectedRoute[];
	resolvedInjectedRoutes: ResolvedInjectedRoute[];
	pageExtensions: string[];
	contentEntryTypes: ContentEntryType[];
	dataEntryTypes: DataEntryType[];
	renderers: AstroRenderer[];
	scripts: {
		stage: InjectedScriptStage;
		content: string;
	}[];
	/**
	 * Map of directive name (e.g. `load`) to the directive script code
	 */
	clientDirectives: Map<string, string>;
	devToolbarApps: (DevToolbarAppEntry | string)[];
	middlewares: { pre: string[]; post: string[] };
	tsConfig: TSConfig | undefined;
	tsConfigPath: string | undefined;
	watchFiles: string[];
	timer: AstroTimer;
	dotAstroDir: URL;
	/**
	 * Latest version of Astro, will be undefined if:
	 * - unable to check
	 * - the user has disabled the check
	 * - the check has not completed yet
	 * - the user is on the latest version already
	 */
	latestAstroVersion: string | undefined;
	// This makes content optional. Internal only so it's not optional on InjectedType
	injectedTypes: Array<Omit<InjectedType, 'content'> & Partial<Pick<InjectedType, 'content'>>>;
	/**
	 * Determine if the build output should be a static, dist folder or a adapter-based server output
	 * undefined when unknown
	 */
	buildOutput: undefined | 'static' | 'server';
	injectedCsp: {
		fontResources: Set<string>;
		styleHashes: Required<CspObject['styleDirective']>['hashes'];
	};
	logLevel: LoggerLevel;
}

Frequently Asked Questions

What is the AstroSettings type?
AstroSettings is a type/interface in the astro codebase, defined in packages/astro/src/types/astro.ts.
Where is AstroSettings defined?
AstroSettings is defined in packages/astro/src/types/astro.ts at line 33.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free