verificationMethods[] = $verificationMethodDescriptor; return $this; } /** * @return VerificationMethodDescriptor[] */ public function getVerificationMethods(): array { return $this->verificationMethods; } /** * @param array $data */ public static function createFromArray(array $data): self { $object = new self(); foreach ($data as $datum) { is_array($datum) || throw MetadataStatementLoadingException::create('Invalid data'); $object->addVerificationMethodDescriptor(VerificationMethodDescriptor::createFromArray($datum)); } return $object; } /** * @return array> */ public function jsonSerialize(): array { return array_map( static fn (VerificationMethodDescriptor $object): array => $object->jsonSerialize(), $this->verificationMethods ); } }