Files
hoppscotch/packages/hoppscotch-common/src/shims.d.ts
2022-12-02 03:05:35 -05:00

35 lines
1.0 KiB
TypeScript

/// <reference types="vite/client" />
/// <reference types="vite-plugin-pages/client" />
/// <reference types="unplugin-icons/types/vue" />
// // Hoppscotch Browser Extension
interface PWExtensionHook {
getVersion: () => { major: number; minor: number }
sendRequest: (
req: AxiosRequestConfig & { wantsBinary: boolean }
) => Promise<NetworkResponse>
cancelRunningRequest: () => void
}
type HoppExtensionStatusHook = {
status: ExtensionStatus
_subscribers: {
status?: ((...args: any[]) => any)[] | undefined
}
subscribe(prop: "status", func: (...args: any[]) => any): void
}
declare global {
interface Window {
__POSTWOMAN_EXTENSION_HOOK__: PWExtensionHook | undefined
__HOPP_EXTENSION_STATUS_PROXY__: HoppExtensionStatusHook | undefined
}
}
// Vue builtins
declare module '*.vue' {
import type { DefineComponent } from 'vue'
// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/ban-types
const component: DefineComponent<{}, {}, any>
export default component
}