make client env strict (#615)
* make client env strict * export env * add types for start package * fix typecheck Co-authored-by: Ryan Carniato <ryansolid@gmail.com>fix-build-duplicate-code
parent
0efce885d5
commit
b24ce3a049
@ -0,0 +1,282 @@
|
||||
// This file is an augmentation to the built-in ImportMeta interface
|
||||
// Thus cannot contain any top-level imports
|
||||
// <https://www.typescriptlang.org/docs/handbook/declaration-merging.html#module-augmentation>
|
||||
|
||||
/* eslint-disable @typescript-eslint/consistent-type-imports */
|
||||
|
||||
interface ImportMetaEnv extends Record<`VITE_${string}`, any>, SolidStartMetaEnv {
|
||||
BASE_URL: string;
|
||||
MODE: string;
|
||||
DEV: boolean;
|
||||
PROD: boolean;
|
||||
SSR: boolean;
|
||||
}
|
||||
|
||||
interface SolidStartMetaEnv {
|
||||
START_ISLANDS_ROUTER: string;
|
||||
START_INDEX_HTML: string;
|
||||
START_ENTRY_CLIENT: string;
|
||||
START_SSR: string;
|
||||
START_ISLANDS: string;
|
||||
START_ENTRY_SERVER: string;
|
||||
DEBUG: string;
|
||||
}
|
||||
|
||||
interface ImportMeta {
|
||||
url: string;
|
||||
|
||||
readonly hot?: import("vite/types/hot").ViteHotContext;
|
||||
|
||||
readonly env: ImportMetaEnv;
|
||||
|
||||
glob: import("vite/types/importGlob").ImportGlobFunction;
|
||||
/**
|
||||
* @deprecated Use `import.meta.glob('*', { eager: true })` instead
|
||||
*/
|
||||
globEager: import("vite/types/importGlob").ImportGlobEagerFunction;
|
||||
}
|
||||
|
||||
// CSS modules
|
||||
type CSSModuleClasses = { readonly [key: string]: string };
|
||||
|
||||
declare module "*.module.css" {
|
||||
const classes: CSSModuleClasses;
|
||||
export default classes;
|
||||
}
|
||||
declare module "*.module.scss" {
|
||||
const classes: CSSModuleClasses;
|
||||
export default classes;
|
||||
}
|
||||
declare module "*.module.sass" {
|
||||
const classes: CSSModuleClasses;
|
||||
export default classes;
|
||||
}
|
||||
declare module "*.module.less" {
|
||||
const classes: CSSModuleClasses;
|
||||
export default classes;
|
||||
}
|
||||
declare module "*.module.styl" {
|
||||
const classes: CSSModuleClasses;
|
||||
export default classes;
|
||||
}
|
||||
declare module "*.module.stylus" {
|
||||
const classes: CSSModuleClasses;
|
||||
export default classes;
|
||||
}
|
||||
declare module "*.module.pcss" {
|
||||
const classes: CSSModuleClasses;
|
||||
export default classes;
|
||||
}
|
||||
declare module "*.module.sss" {
|
||||
const classes: CSSModuleClasses;
|
||||
export default classes;
|
||||
}
|
||||
|
||||
// CSS
|
||||
declare module "*.css" {
|
||||
const css: string;
|
||||
export default css;
|
||||
}
|
||||
declare module "*.scss" {
|
||||
const css: string;
|
||||
export default css;
|
||||
}
|
||||
declare module "*.sass" {
|
||||
const css: string;
|
||||
export default css;
|
||||
}
|
||||
declare module "*.less" {
|
||||
const css: string;
|
||||
export default css;
|
||||
}
|
||||
declare module "*.styl" {
|
||||
const css: string;
|
||||
export default css;
|
||||
}
|
||||
declare module "*.stylus" {
|
||||
const css: string;
|
||||
export default css;
|
||||
}
|
||||
declare module "*.pcss" {
|
||||
const css: string;
|
||||
export default css;
|
||||
}
|
||||
declare module "*.sss" {
|
||||
const css: string;
|
||||
export default css;
|
||||
}
|
||||
|
||||
// Built-in asset types
|
||||
// see `src/node/constants.ts`
|
||||
|
||||
// images
|
||||
declare module "*.png" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
declare module "*.jpg" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
declare module "*.jpeg" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
declare module "*.jfif" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
declare module "*.pjpeg" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
declare module "*.pjp" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
declare module "*.gif" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
declare module "*.svg" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
declare module "*.ico" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
declare module "*.webp" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
declare module "*.avif" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
|
||||
// media
|
||||
declare module "*.mp4" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
declare module "*.webm" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
declare module "*.ogg" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
declare module "*.mp3" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
declare module "*.wav" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
declare module "*.flac" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
declare module "*.aac" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
|
||||
// fonts
|
||||
declare module "*.woff" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
declare module "*.woff2" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
declare module "*.eot" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
declare module "*.ttf" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
declare module "*.otf" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
|
||||
// other
|
||||
declare module "*.webmanifest" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
declare module "*.pdf" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
declare module "*.txt" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
|
||||
// wasm?init
|
||||
declare module "*.wasm?init" {
|
||||
const initWasm: (options: WebAssembly.Imports) => Promise<WebAssembly.Instance>;
|
||||
export default initWasm;
|
||||
}
|
||||
|
||||
// web worker
|
||||
declare module "*?worker" {
|
||||
const workerConstructor: {
|
||||
new (): Worker;
|
||||
};
|
||||
export default workerConstructor;
|
||||
}
|
||||
|
||||
declare module "*?worker&inline" {
|
||||
const workerConstructor: {
|
||||
new (): Worker;
|
||||
};
|
||||
export default workerConstructor;
|
||||
}
|
||||
|
||||
declare module "*?worker&url" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
|
||||
declare module "*?sharedworker" {
|
||||
const sharedWorkerConstructor: {
|
||||
new (): SharedWorker;
|
||||
};
|
||||
export default sharedWorkerConstructor;
|
||||
}
|
||||
|
||||
declare module "*?sharedworker&inline" {
|
||||
const sharedWorkerConstructor: {
|
||||
new (): SharedWorker;
|
||||
};
|
||||
export default sharedWorkerConstructor;
|
||||
}
|
||||
|
||||
declare module "*?sharedworker&url" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
|
||||
declare module "*?raw" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
|
||||
declare module "*?url" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
||||
|
||||
declare module "*?inline" {
|
||||
const src: string;
|
||||
export default src;
|
||||
}
|
Loading…
Reference in New Issue