package event import "time" // Event 是事件契约的公共接口。 // 不同模块只依赖事件类型和字段,不依赖具体实现。 type Event interface { Type() string } const ( EventJWTTokenIssueRequested = "jwt.token.issue_requested" ) // TokenIssueRequested 让 JWT 模块签发 token(通过 Reply 通道返回)。 type TokenIssueRequested struct { At time.Time Username string Reply chan TokenIssueResult } func (e TokenIssueRequested) Type() string { return EventJWTTokenIssueRequested } type TokenIssueResult struct { Token string Err string }