@andrekorol/kollateral
Version:
Typescript library for Kollateral, the flash loan building block
43 lines (39 loc) • 1.43 kB
text/typescript
import { Network } from "./network";
import { Token } from "./tokens";
const kTokenToAddressMap: Map<Network, Map<Token, string>> = new Map([
[],
[],
[]
])],
[],
[],
[]
])]
]);
const addressToKTokenMap: Map<Network, Map<string, Token>> =
new Map(Array.from(kTokenToAddressMap.entries())
.map(kv => [kv[0], new Map(Array.from(kv[1].entries())
.map(kv => [kv[1], kv[0]]))
]));
export class KTokenUtils {
static getAddress(network: Network, token: Token): string | null {
if (!kTokenToAddressMap.has(network)) {
return null;
}
if (!kTokenToAddressMap.get(network)!.has(token)) {
return null;
}
return kTokenToAddressMap.get(network)!.get(token)!;
}
static fromAddress(network: Network, kTokenAddress: string): Token | null {
if (!addressToKTokenMap.has(network)) {
return null;
}
if (!addressToKTokenMap.get(network)!.has(kTokenAddress)) {
return null;
}
return addressToKTokenMap.get(network)!.get(kTokenAddress)!;
}
}