@mintlify/validation
Version:
Validates mint.json files
75 lines (74 loc) • 2.58 kB
TypeScript
import type { StaticPropsOrgType, CustomerPageType, SnippetType, CssFileType, JsFileType, OpenApiMetadata, DecoratedNavigation, StarterQuestionType } from '@mintlify/models';
import { DecoratedNavigationConfig } from '../mint-config/schemas/v2/properties/index.js';
import { SchemaGraphData } from '../openapi/v2/types/index.js';
import { StaticPropsDeploymentType } from './deployment/index.js';
export type FaviconsProps = {
icons: {
rel: string;
href: string;
type: string;
sizes?: string;
media?: string;
}[];
browserconfig?: string;
};
type _NotFoundStaticPropsBase = {
deployment: StaticPropsDeploymentType;
favicons?: FaviconsProps;
};
type _FullPageStaticPropsBase = {
deployment: StaticPropsDeploymentType;
page: CustomerPageType;
snippets: SnippetType[];
shouldIndex: boolean;
cssFiles: CssFileType[];
jsFiles: JsFileType[];
org: StaticPropsOrgType;
openApiUrls: {
url: string;
metadata: OpenApiMetadata;
}[];
asyncApiUrls?: {
url: string;
metadata: OpenApiMetadata;
}[];
buildId?: string;
favicons?: FaviconsProps;
apiReferenceGraphData?: SchemaGraphData;
customLanguages?: string[];
};
type _NavigationMetadata<IsPdfPageType extends boolean = boolean> = IsPdfPageType extends true ? {
navigation: DecoratedNavigation;
docsDecoratedNav?: DecoratedNavigationConfig;
} : Record<string, never>;
export type NotFoundStaticProps<IsPdfPageType extends boolean = boolean> = _NotFoundStaticPropsBase & _NavigationMetadata<IsPdfPageType>;
export type FullPageStaticProps<IsPdfPageType extends boolean = boolean> = _FullPageStaticPropsBase & _NavigationMetadata<IsPdfPageType>;
export type ServerStaticProps<IsPdfPageType extends boolean = false> = NotFoundStaticProps<IsPdfPageType> | FullPageStaticProps<IsPdfPageType>;
export type StaticPageProps = {
page: CustomerPageType;
shouldIndex: boolean;
};
export type StaticMetadataProps = {
deployment: StaticPropsDeploymentType;
org: StaticPropsOrgType;
buildId?: string;
starterQuestions?: StarterQuestionType[];
};
export type StaticNavProps = {
navigation: DecoratedNavigation;
docsDecoratedNav?: DecoratedNavigationConfig;
};
export type StaticCssAndJsFilesProps = {
cssFiles: CssFileType[];
jsFiles: JsFileType[];
};
export type StaticSnippetsProps = {
snippets: SnippetType[];
};
export type StaticOpenApiUrlsProps = {
openApiUrls: {
url: string;
metadata: OpenApiMetadata;
}[];
};
export {};