You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					89 lines
				
				3.9 KiB
			
		
		
			
		
	
	
					89 lines
				
				3.9 KiB
			| 
											3 years ago
										 | import * as React from "react"; | ||
|  | import type { AgnosticRouteMatch, AgnosticIndexRouteObject, AgnosticNonIndexRouteObject, History, Location, Router, StaticHandlerContext, To, TrackedPromise } from "@remix-run/router"; | ||
|  | import type { Action as NavigationType } from "@remix-run/router"; | ||
|  | export interface IndexRouteObject { | ||
|  |     caseSensitive?: AgnosticIndexRouteObject["caseSensitive"]; | ||
|  |     path?: AgnosticIndexRouteObject["path"]; | ||
|  |     id?: AgnosticIndexRouteObject["id"]; | ||
|  |     loader?: AgnosticIndexRouteObject["loader"]; | ||
|  |     action?: AgnosticIndexRouteObject["action"]; | ||
|  |     hasErrorBoundary?: AgnosticIndexRouteObject["hasErrorBoundary"]; | ||
|  |     shouldRevalidate?: AgnosticIndexRouteObject["shouldRevalidate"]; | ||
|  |     handle?: AgnosticIndexRouteObject["handle"]; | ||
|  |     index: true; | ||
|  |     children?: undefined; | ||
|  |     element?: React.ReactNode | null; | ||
|  |     errorElement?: React.ReactNode | null; | ||
|  | } | ||
|  | export interface NonIndexRouteObject { | ||
|  |     caseSensitive?: AgnosticNonIndexRouteObject["caseSensitive"]; | ||
|  |     path?: AgnosticNonIndexRouteObject["path"]; | ||
|  |     id?: AgnosticNonIndexRouteObject["id"]; | ||
|  |     loader?: AgnosticNonIndexRouteObject["loader"]; | ||
|  |     action?: AgnosticNonIndexRouteObject["action"]; | ||
|  |     hasErrorBoundary?: AgnosticNonIndexRouteObject["hasErrorBoundary"]; | ||
|  |     shouldRevalidate?: AgnosticNonIndexRouteObject["shouldRevalidate"]; | ||
|  |     handle?: AgnosticNonIndexRouteObject["handle"]; | ||
|  |     index?: false; | ||
|  |     children?: RouteObject[]; | ||
|  |     element?: React.ReactNode | null; | ||
|  |     errorElement?: React.ReactNode | null; | ||
|  | } | ||
|  | export declare type RouteObject = IndexRouteObject | NonIndexRouteObject; | ||
|  | export declare type DataRouteObject = RouteObject & { | ||
|  |     children?: DataRouteObject[]; | ||
|  |     id: string; | ||
|  | }; | ||
|  | export interface RouteMatch<ParamKey extends string = string, RouteObjectType extends RouteObject = RouteObject> extends AgnosticRouteMatch<ParamKey, RouteObjectType> { | ||
|  | } | ||
|  | export interface DataRouteMatch extends RouteMatch<string, DataRouteObject> { | ||
|  | } | ||
|  | export declare const DataStaticRouterContext: React.Context<StaticHandlerContext | null>; | ||
|  | export interface DataRouterContextObject extends NavigationContextObject { | ||
|  |     router: Router; | ||
|  | } | ||
|  | export declare const DataRouterContext: React.Context<DataRouterContextObject | null>; | ||
|  | export declare const DataRouterStateContext: React.Context<import("@remix-run/router").RouterState | null>; | ||
|  | export declare const AwaitContext: React.Context<TrackedPromise | null>; | ||
|  | export declare type RelativeRoutingType = "route" | "path"; | ||
|  | export interface NavigateOptions { | ||
|  |     replace?: boolean; | ||
|  |     state?: any; | ||
|  |     preventScrollReset?: boolean; | ||
|  |     relative?: RelativeRoutingType; | ||
|  | } | ||
|  | /** | ||
|  |  * A Navigator is a "location changer"; it's how you get to different locations. | ||
|  |  * | ||
|  |  * Every history instance conforms to the Navigator interface, but the | ||
|  |  * distinction is useful primarily when it comes to the low-level <Router> API | ||
|  |  * where both the location and a navigator must be provided separately in order | ||
|  |  * to avoid "tearing" that may occur in a suspense-enabled app if the action | ||
|  |  * and/or location were to be read directly from the history instance. | ||
|  |  */ | ||
|  | export interface Navigator { | ||
|  |     createHref: History["createHref"]; | ||
|  |     encodeLocation?: History["encodeLocation"]; | ||
|  |     go: History["go"]; | ||
|  |     push(to: To, state?: any, opts?: NavigateOptions): void; | ||
|  |     replace(to: To, state?: any, opts?: NavigateOptions): void; | ||
|  | } | ||
|  | interface NavigationContextObject { | ||
|  |     basename: string; | ||
|  |     navigator: Navigator; | ||
|  |     static: boolean; | ||
|  | } | ||
|  | export declare const NavigationContext: React.Context<NavigationContextObject>; | ||
|  | interface LocationContextObject { | ||
|  |     location: Location; | ||
|  |     navigationType: NavigationType; | ||
|  | } | ||
|  | export declare const LocationContext: React.Context<LocationContextObject>; | ||
|  | export interface RouteContextObject { | ||
|  |     outlet: React.ReactElement | null; | ||
|  |     matches: RouteMatch[]; | ||
|  | } | ||
|  | export declare const RouteContext: React.Context<RouteContextObject>; | ||
|  | export declare const RouteErrorContext: React.Context<any>; | ||
|  | export {}; |