UNPKG

@netlify/build

Version:
56 lines (55 loc) 1.51 kB
import type { Many } from '../utils/many.js'; import type { Build } from './build.js'; import type { Functions } from './functions.js'; import type { PluginInputs } from './inputs.js'; type HttpStatusCode = number; interface Redirect { from: string; to?: string; status?: HttpStatusCode; force?: boolean; signed?: string; query?: Partial<Record<string, string>>; headers?: Partial<Record<string, string>>; conditions?: Partial<Record<'Language' | 'Role' | 'Country' | 'Cookie', readonly string[]>>; } interface Header { for: string; values: Partial<Record<string, Many<string, 'mutable'>>>; } interface EdgeFunction { path?: `/${string}`; function: string; } interface NetlifyPlugin { package: string; inputs: PluginInputs; } interface ImagesConfig { remote_images: string[]; } export interface NetlifyConfig { /** * array of redirects with their modifiable options */ redirects: Redirect[]; /** * array of headers with their modifiable options */ headers: Header[]; /** * array of Edge Functions with their modifiable options */ edge_functions: EdgeFunction[]; /** * object with options for modifying [functions](https://docs.netlify.com/configure-builds/file-based-configuration/#functions) */ functions: Functions; build: Build; plugins: readonly NetlifyPlugin[]; /** * object with options for image transforms */ images: ImagesConfig; } export {};