/** * @param PaymentRequestSigner $signer * @param string $network * @param int $time */ public function __construct(PaymentRequestSigner $signer, $network, $time) { if (!in_array($network, ['main', 'test'], true)) { throw new \InvalidArgumentException('Network must be main or test'); } $this->details = new PaymentDetailsBuf(); $this->details->setNetwork($network)->setTime($time); $this->request = new PaymentRequestBuf(); $this->signer = $signer; }