import CoreModel /// 获取/提交计划数据的用例。 public struct PlanUseCase: Sendable { private let repository: PlanRepository public init(repository: PlanRepository) { self.repository = repository } public func observePlan(type: PlanType) -> AsyncThrowingStream { repository.observePlan(type: type) } public func observePlanSubmit(type: PlanType, periodKey: String) -> AsyncThrowingStream { repository.observePlanSubmit(type: type, periodKey: periodKey) } public func savePlan(type: PlanType, periodKey: String, content: String, attachments: [String]) async throws { try await repository.savePlan(type: type, periodKey: periodKey, content: content, attachments: attachments) } }