javascript - Typescript Přidání typů k argumentům metod knihoven
Používám externí knihovnu pg-mem, která zpřístupňuje LibAdapters a má metodu createTypeormConnection, která přijímá několik argumentů, ale typu any.
export interface LibAdapters {
createTypeormConnection(typeOrmConnection: any, queryLatency?: number): any;
}
Chci specifikovat přesný typ těchto argumentů, protože dostávám spoustu lint chyb:
Unsafe return of an `any` typed value.eslint@typescript-eslint/no-unsafe-returnJak mohu specifikovat typy argumentů a návratový typ metody?
Odpověď č. 1
Existující typy můžete rozšířit pomocí slučování deklarací:
declare module "pg-mem" {
interface LibAdapters {
createTypeormConnection(typeOrmConnection: SomeType, queryLatency?: number): SomeOtherType
}
}
Všimněte si, že to přidá přetížení createTypeormConnection namísto jeho přepsání, takže pokud zavoláte createTypeormConnection s hodnotou jiného typu než SomeType, stále dostanete any.
