1export type PageMetadata = { 2 title?: string; 3 description?: string; 4 sourceCodeUrl?: string; 5 packageName?: string; 6 maxHeadingDepth?: number; 7 /* If the page should not show up in the Algolia Docsearch results */ 8 hideFromSearch?: boolean; 9 hideTOC?: boolean; 10}; 11 12/** 13 * A single header from the `remark-export-headings` plugin. 14 */ 15export type RemarkHeading = { 16 id?: string; 17 depth: number; 18 title: string; 19 type: string; 20}; 21 22/** 23 * Utility type. Extracts `T` type from `T[]` array. 24 */ 25export type ElementType<T extends any[]> = T extends (infer U)[] ? U : never; 26 27export type Url = { 28 pathname: string; 29}; 30 31export type NavigationType = 'section' | 'group' | 'page'; 32 33export type NavigationRoute = { 34 type: NavigationType; 35 name: string; 36 href: string; 37 as?: string; 38 hidden?: boolean; 39 expanded?: boolean; 40 sidebarTitle?: string; 41 weight?: number; 42 children?: NavigationRoute[]; 43}; 44 45/** 46 * Available platforms supported by our APIs. 47 * Temporarily it also accepts other strings for compatibility reasons. 48 */ 49export type PlatformName = 'ios' | 'android' | 'web' | 'expo' | string; 50