http = $http; } /** * @param array $query * @return array> */ public function list(string $sessionId, array $query = []): array { return $this->http->request('GET', "/api/sessions/{$this->http->encodeSegment($sessionId)}/contacts", $query) ?? []; } /** @return array */ public function get(string $sessionId, string $contactId): array { return $this->http->request('GET', "/api/sessions/{$this->http->encodeSegment($sessionId)}/contacts/{$this->http->encodeSegment($contactId)}"); } /** @return array */ public function check(string $sessionId, string $number): array { return $this->http->request('GET', "/api/sessions/{$this->http->encodeSegment($sessionId)}/contacts/check/{$this->http->encodeSegment($number)}"); } /** @return array */ public function profilePicture(string $sessionId, string $contactId): array { return $this->http->request('GET', "/api/sessions/{$this->http->encodeSegment($sessionId)}/contacts/{$this->http->encodeSegment($contactId)}/profile-picture"); } /** @return array */ public function phone(string $sessionId, string $contactId): array { return $this->http->request('GET', "/api/sessions/{$this->http->encodeSegment($sessionId)}/contacts/{$this->http->encodeSegment($contactId)}/phone"); } /** @return array */ public function block(string $sessionId, string $contactId): array { return $this->http->request('POST', "/api/sessions/{$this->http->encodeSegment($sessionId)}/contacts/{$this->http->encodeSegment($contactId)}/block"); } /** @return array */ public function unblock(string $sessionId, string $contactId): array { return $this->http->request('DELETE', "/api/sessions/{$this->http->encodeSegment($sessionId)}/contacts/{$this->http->encodeSegment($contactId)}/block"); } }