id} is not a member of workspace {$workspace->id}. Only existing members can become owners.", workspace: $workspace, user: $user, code: 422 ); } /** * The user is already the owner. */ public static function alreadyOwner(Workspace $workspace, User $user): self { return new self( message: "User {$user->id} is already the owner of workspace {$workspace->id}.", workspace: $workspace, user: $user, code: 422 ); } /** * The workspace has no current owner. */ public static function noCurrentOwner(Workspace $workspace): self { return new self( message: "Workspace {$workspace->id} has no current owner.", workspace: $workspace, code: 500 ); } /** * The requesting user is not authorised to transfer ownership. */ public static function unauthorised(Workspace $workspace, ?User $user = null): self { return new self( message: 'Only the workspace owner can transfer ownership.', workspace: $workspace, user: $user, code: 403 ); } }