import { SoundboardMeta } from './types'; /** Parallels custom-emoji/PackMetaReader (no usage tiers for soundboard). */ export class SoundboardMetaReader { private readonly meta: SoundboardMeta; constructor(meta: SoundboardMeta) { this.meta = meta; } get name(): string | undefined { const displayName = this.meta.display_name; return typeof displayName === 'string' ? displayName : undefined; } get avatar(): string | undefined { const avatarURL = this.meta.avatar_url; return typeof avatarURL === 'string' ? avatarURL : undefined; } get attribution(): string | undefined { const { attribution } = this.meta; return typeof attribution === 'string' ? attribution : undefined; } get content(): SoundboardMeta { return this.meta; } }