"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.isPromiseFulfilled = isPromiseFulfilled;
exports.isPromiseRejected = isPromiseRejected;
exports.isDefined = isDefined;
exports.isTvmProvider = isTvmProvider;
exports.isEvmProvider = isEvmProvider;
const ethers_1 = require("ethers");
function isPromiseFulfilled(promiseSettledResult) {
    return promiseSettledResult.status === "fulfilled";
}
function isPromiseRejected(promiseSettledResult) {
    return promiseSettledResult.status === "rejected";
}
function isDefined(input) {
    return input !== null && input !== undefined;
}
function isTvmProvider(provider) {
    return typeof provider?.trx?.getEnergyPrices === "function";
}
function isEvmProvider(provider) {
    return provider instanceof ethers_1.providers.Provider;
}
//# sourceMappingURL=TypeGuards.js.map