Something went wrong. Try again.
Website hub for the atmosphere community, aggregating posts, events, regional, and more
Something went wrong. Try again.
1.1 kB · 59 lines
TypeScript
at main
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960export interface CommunityEvent { name: string; startsAt: Date; endsAt?: Date; description?: string; mode: 'inperson' | 'virtual' | 'hybrid'; status: string; location?: string; locationDetail?: LocationDetail; /** Public-facing URL for this event (Smoke Signal / OpenMeet / etc.). */ uri: string; /** at:// URI of the underlying event record. */ atUri: string; source: string; rkey: string; did: string;}
export interface LocationDetail { type: 'address' | 'geo' | 'hthree'; name?: string; locality?: string; region?: string; country?: string; latitude?: number; longitude?: number;}
export interface SharedPost { title: string; url: string; textContent?: string; publishedAt?: Date; sharedAt: Date; author: AtProfile; source: string; documentUri: string; tags?: string[];}
export interface BlogPost { title: string; url: string; textContent?: string; publishedAt: Date; author: AtProfile; path?: string; tags?: string[]; rkey: string; did: string;}
export interface AtProfile { did: string; handle: string; displayName?: string; avatar?: string;}