Improve types for getStaticPaths, fixes dead links (#3755)

This commit is contained in:
Erika 2022-06-29 10:43:52 -04:00 committed by GitHub
parent aaf0cd8bfc
commit 40be96d7c8
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -777,7 +777,8 @@ export type GetHydrateCallback = () => Promise<() => void | Promise<void>>;
/** /**
* getStaticPaths() options * getStaticPaths() options
* Docs: https://docs.astro.build/reference/api-reference/#getstaticpaths *
* [Astro Reference](https://docs.astro.build/en/reference/api-reference/#getstaticpaths)
*/ export interface GetStaticPathsOptions { */ export interface GetStaticPathsOptions {
paginate: PaginateFunction; paginate: PaginateFunction;
/** /**
@ -793,6 +794,18 @@ export type GetStaticPathsResultKeyed = GetStaticPathsResult & {
keyed: Map<string, GetStaticPathsItem>; keyed: Map<string, GetStaticPathsItem>;
}; };
/**
* Return an array of pages to generate for a [dynamic route](https://docs.astro.build/en/core-concepts/routing/#dynamic-routes). (**SSG Only**)
*
* [Astro Reference](https://docs.astro.build/en/reference/api-reference/#getstaticpaths)
*/
export type GetStaticPaths = (
options: GetStaticPathsOptions
) =>
| Promise<GetStaticPathsResult | GetStaticPathsResult[]>
| GetStaticPathsResult
| GetStaticPathsResult[];
export interface HydrateOptions { export interface HydrateOptions {
name: string; name: string;
value?: string; value?: string;
@ -820,7 +833,8 @@ export interface MarkdownParserResponse extends MarkdownRenderingResult {
/** /**
* The `content` prop given to a Layout * The `content` prop given to a Layout
* https://docs.astro.build/guides/markdown-content/#markdown-layouts *
* [Astro reference](https://docs.astro.build/en/guides/markdown-content/#markdown-layouts)
*/ */
export type MarkdownContent<T extends Record<string, any> = Record<string, any>> = T & { export type MarkdownContent<T extends Record<string, any> = Record<string, any>> = T & {
astro: MarkdownMetadata; astro: MarkdownMetadata;
@ -828,7 +842,8 @@ export type MarkdownContent<T extends Record<string, any> = Record<string, any>>
/** /**
* paginate() Options * paginate() Options
* Docs: https://docs.astro.build/guides/pagination/#calling-the-paginate-function *
* [Astro reference](https://docs.astro.build/en/reference/api-reference/#paginate)
*/ */
export interface PaginateOptions { export interface PaginateOptions {
/** the number of items per-page (default: `10`) */ /** the number of items per-page (default: `10`) */
@ -840,8 +855,9 @@ export interface PaginateOptions {
} }
/** /**
* Page Prop * Represents a single page of data in a paginated collection
* Docs: https://docs.astro.build/guides/pagination/#using-the-page-prop *
* [Astro reference](https://docs.astro.build/en/reference/api-reference/#the-pagination-page-prop)
*/ */
export interface Page<T = any> { export interface Page<T = any> {
/** result */ /** result */
@ -869,7 +885,7 @@ export interface Page<T = any> {
}; };
} }
export type PaginateFunction = (data: [], args?: PaginateOptions) => GetStaticPathsResult; export type PaginateFunction = (data: any[], args?: PaginateOptions) => GetStaticPathsResult;
export type Params = Record<string, string | number | undefined>; export type Params = Record<string, string | number | undefined>;