@now/build-utils
Version:
39 lines (38 loc) • 1.37 kB
TypeScript
import { Route } from '@vercel/routing-utils';
import { PackageJson, Builder, BuilderFunctions } from './types';
interface ErrorResponse {
code: string;
message: string;
action?: string;
link?: string;
}
interface Options {
tag?: 'canary' | 'latest' | string;
functions?: BuilderFunctions;
ignoreBuildScript?: boolean;
projectSettings?: {
framework?: string | null;
devCommand?: string | null;
installCommand?: string | null;
buildCommand?: string | null;
outputDirectory?: string | null;
createdAt?: number;
};
cleanUrls?: boolean;
trailingSlash?: boolean;
featHandleMiss?: boolean;
}
export declare function sortFiles(fileA: string, fileB: string): number;
export declare function detectApiExtensions(builders: Builder[]): Set<string>;
export declare function detectApiDirectory(builders: Builder[]): string | null;
export declare function detectOutputDirectory(builders: Builder[]): string | null;
export declare function detectBuilders(files: string[], pkg?: PackageJson | undefined | null, options?: Options): Promise<{
builders: Builder[] | null;
errors: ErrorResponse[] | null;
warnings: ErrorResponse[];
defaultRoutes: Route[] | null;
redirectRoutes: Route[] | null;
rewriteRoutes: Route[] | null;
errorRoutes: Route[] | null;
}>;
export {};