@shopify/cli
Version:
A CLI tool to build for the Shopify platform
46 lines (37 loc) • 1.31 kB
TypeScript
/// <reference types="vite/client" />
/// <reference types="react-router" />
/// <reference types="@shopify/oxygen-workers-types" />
// Enhance TypeScript's built-in typings.
import '@total-typescript/ts-reset';
import type {
HydrogenContext,
HydrogenSessionData,
HydrogenEnv,
} from '@shopify/hydrogen';
import type {createAppLoadContext} from '~/lib/context';
declare global {
/**
* A global `process` object is only available during build to access NODE_ENV.
*/
const process: {env: {NODE_ENV: 'production' | 'development'}};
interface Env extends HydrogenEnv {
// declare additional Env parameter use in the fetch handler and Remix loader context here
}
}
declare module 'react-router' {
interface AppLoadContext
extends Awaited<ReturnType<typeof createAppLoadContext>> {
// to change context type, change the return of createAppLoadContext() instead
}
// TODO: remove this once we've migrated our loaders to `Route.LoaderArgs`
interface LoaderFunctionArgs {
context: AppLoadContext;
}
// TODO: remove this once we've migrated our loaders to `Route.ActionArgs`
interface ActionFunctionArgs {
context: AppLoadContext;
}
interface SessionData extends HydrogenSessionData {
// declare local additions to the Remix session data here
}
}