pragma ever -solidity ^0.62.0; import "../structures/ICallbackParamsStructure.tsol"; /** * @dev Interface defines a contract that has functions to one-step transfer * ownership to new owner */ interface ITransferableOwnership is ICallbackParamsStructure { /** * @dev Transfer ownership to new owner. * @dev Can be called only by current owner. * @param newOwner New owner. * @param remainingGasTo Address to send remaining gas after transfer ownership. * @param callbacks Callbacks to be called after transfer ownership. * * Precondition: * - Caller must be owner. * * Postcondition: * * - Ownership is transferred to new owner. */ function transferOwnership( address newOwner, address remainingGasTo, mapping(address => CallbackParams) callbacks ) external; }