--- /dev/null
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+/**
+ * A builder for gRPC status objects.
+ */
+class StatusBuilder {
+ constructor() {
+ this.code = null;
+ this.details = null;
+ this.metadata = null;
+ }
+ /**
+ * Adds a status code to the builder.
+ */
+ withCode(code) {
+ this.code = code;
+ return this;
+ }
+ /**
+ * Adds details to the builder.
+ */
+ withDetails(details) {
+ this.details = details;
+ return this;
+ }
+ /**
+ * Adds metadata to the builder.
+ */
+ withMetadata(metadata) {
+ this.metadata = metadata;
+ return this;
+ }
+ /**
+ * Builds the status object.
+ */
+ build() {
+ const status = {};
+ if (this.code !== null) {
+ status.code = this.code;
+ }
+ if (this.details !== null) {
+ status.details = this.details;
+ }
+ if (this.metadata !== null) {
+ status.metadata = this.metadata;
+ }
+ return status;
+ }
+}
+exports.StatusBuilder = StatusBuilder;
+//# sourceMappingURL=status-builder.js.map
\ No newline at end of file