export class InMemoryBillingStateGateway {
    state = {
        dispatchPaused: false,
        lastAuditAt: null,
        lastRegressionReason: null,
    };
    read() {
        return { ...this.state };
    }
    pause(reason, auditedAt) {
        this.state = {
            dispatchPaused: true,
            lastAuditAt: auditedAt,
            lastRegressionReason: reason,
        };
    }
    resume(auditedAt) {
        this.state = {
            dispatchPaused: false,
            lastAuditAt: auditedAt,
            lastRegressionReason: null,
        };
    }
    recordHealthy(auditedAt) {
        this.state = {
            ...this.state,
            lastAuditAt: auditedAt,
            lastRegressionReason: null,
        };
    }
}
//# sourceMappingURL=billingState.memory.gateway.js.map