fix(lib/types): mark metro global functions as non-nullable

This commit is contained in:
PalmDevs 2025-04-11 18:35:54 +07:00
parent 52be51ac88
commit 97aa69038c
No known key found for this signature in database
GPG key ID: 6FAE8F8677ACA8BA
2 changed files with 9 additions and 6 deletions

View file

@ -5,6 +5,7 @@ else
Object.defineProperty(globalThis, '__d', {
configurable: true,
set: v => {
// @ts-expect-error
// biome-ignore lint/performance/noDelete: This is only done one time ever
delete globalThis.__d
globalThis.__d = patchMetroDefine(v)

14
lib/types/types.d.ts vendored
View file

@ -1,7 +1,7 @@
// All of these typings are exported, be careful what you export here!
import type { Buffer as _Buffer } from 'buffer'
import type { Metro } from '@revenge-mod/modules'
import type { Metro } from '@revenge-mod/modules/types/metro'
import type { ErrorUtils as RNErrorUtils } from 'react-native'
/// HERMES
@ -65,9 +65,9 @@ declare global {
declare global {
var nativeModuleProxy: Record<string, unknown>
var __r: Metro.RequireFn | undefined
var __c: Metro.ClearFn | undefined
var __d: Metro.DefineFn | undefined
var __r: Metro.RequireFn
var __c: Metro.ClearFn
var __d: Metro.DefineFn
}
/// REACT NATIVE
@ -108,8 +108,10 @@ export namespace ReactNative {
type: string
resolver?: AssetDestPathResolver
}
}
export function registerAsset(asset: PackagerAsset): number
export function getAssetByID(assetId: number): PackagerAsset
export interface AssetsRegistry {
registerAsset(asset: PackagerAsset): number
getAssetByID(assetId: number): PackagerAsset
}
}