
// trustedAddressDeposits provides functions to save and retrieve cryptocurrency address deposit information from hosts

package trustedAddressDeposits

//TODO: Build package
// Deposits should be retrieved from multiple hosts using the GetAddressDeposits request.
// We should store deposits in badgerDatabase.
// We must store each deposit, the host who told us about the deposit, and the time the deposit was made.
// The time of a deposit is derived from the block time, so all deposits within the same block should be represented as a single deposit.
// Hosts should only provide information about confirmed deposits (a defined number of blocks)

// We can detect hosts who are lying by comparing their alleged deposits to what other hosts are telling us.
// We can then add those hosts to our malicious hosts list.
// Clients should be constantly updating deposits for all downloaded moderators to keep up with any new deposits.

// For an address deposit history to be known, it needs to have been verified by at least 3 hosts

// Regardless of which network type the host who shared them belongs to, address deposits should be identical.
// TODO: Take into consideration the network type of the host who shared each address deposit?

import "seekia/internal/network/serverResponse"

func CheckIfAddressDepositsAreKnown(cryptocurrency string, address string)(bool, error){

	//TODO

	return true, nil
}

func AddAddressDepositObjectsListToCache(hostIdentityHash [16]byte, cryptocurrency string, depositObjectsList []serverResponse.DepositStruct)error{

	//TODO

	return nil
}

func AddAddressesWithNoDepositsToCache(hostIdentityHash [16]byte, cryptocurrency string, addressesList []string)error{

	//TODO

	return nil
}





