/** Minimal caller context needed for access-gated fields. */
export interface CallerContext {
  userId: string;
  role: string;
}

export class GetListingQuery {
  constructor(
    public readonly listingId: string,
    /** When omitted the caller is treated as anonymous (public). */
    public readonly caller?: CallerContext,
  ) {}
}
