"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.BlockchainTransactionMinedEvent = void 0;
const Foundations_1 = require("@dfns/datamodel/dist/Foundations");
const DfnsMessageTopic_1 = require("./DfnsMessageTopic");
const NetworkToTopicMap = {
    [Foundations_1.BlockchainNetwork.ETH]: DfnsMessageTopic_1.DfnsMessageTopic.EthereumTransactionMined,
    [Foundations_1.BlockchainNetwork.ETH_GOERLI]: DfnsMessageTopic_1.DfnsMessageTopic.EthereumGoerliTransactionMined,
    [Foundations_1.BlockchainNetwork.MATIC]: DfnsMessageTopic_1.DfnsMessageTopic.PolygonTransactionMined,
    [Foundations_1.BlockchainNetwork.MATIC_MUMBAI]: DfnsMessageTopic_1.DfnsMessageTopic.PolygonMumbaiTransactionMined,
    [Foundations_1.BlockchainNetwork.BNB]: DfnsMessageTopic_1.DfnsMessageTopic.BscTransactionMined,
    [Foundations_1.BlockchainNetwork.BNB_TESTNET]: DfnsMessageTopic_1.DfnsMessageTopic.BscTestnetTransactionMined,
    [Foundations_1.BlockchainNetwork.BTC]: DfnsMessageTopic_1.DfnsMessageTopic.BitcoinTransactionMined,
    [Foundations_1.BlockchainNetwork.BTC_TESTNET]: DfnsMessageTopic_1.DfnsMessageTopic.BitcoinTestnetTransactionMined,
    [Foundations_1.BlockchainNetwork.LTC]: DfnsMessageTopic_1.DfnsMessageTopic.LitecoinTransactionMined,
};
class BlockchainTransactionMinedEvent {
    constructor(network, blockNumber, timestamp, transaction) {
        this.topic = NetworkToTopicMap[network];
        this.network = network;
        this.blockNumber = blockNumber;
        this.timestamp = timestamp;
        this.transaction = transaction;
    }
}
exports.BlockchainTransactionMinedEvent = BlockchainTransactionMinedEvent;
//# sourceMappingURL=BlockchainTransactionMinedEvent.js.map