import { l } from "@atproto/lex-schema"; declare const $nsid = "place.stream.badge.defs"; type $nsid = typeof $nsid; export { $nsid }; /** This user is a bot. Self-applied via place.stream.chat.profile selfLabels. */ declare const bot: l.TokenSchema<"place.stream.badge.defs#bot">; export { bot }; /** This user is a bot. Self-applied via place.stream.chat.profile selfLabels. */ declare const Bot: "place.stream.badge.defs#bot"; /** This user is a bot. Self-applied via place.stream.chat.profile selfLabels. */ type Bot = typeof Bot; export { Bot }; /** This user is a moderator. Displayed with a sword icon. */ declare const mod: l.TokenSchema<"place.stream.badge.defs#mod">; export { mod }; /** This user is a moderator. Displayed with a sword icon. */ declare const Mod: "place.stream.badge.defs#mod"; /** This user is a moderator. Displayed with a sword icon. */ type Mod = typeof Mod; export { Mod }; /** This user is a very important person. */ declare const vip: l.TokenSchema<"place.stream.badge.defs#vip">; export { vip }; /** This user is a very important person. */ declare const Vip: "place.stream.badge.defs#vip"; /** This user is a very important person. */ type Vip = typeof Vip; export { Vip }; /** This user has won or earned a special event or contest badge. */ declare const event: l.TokenSchema<"place.stream.badge.defs#event">; export { event }; /** This user has won or earned a special event or contest badge. */ declare const Event: "place.stream.badge.defs#event"; /** This user has won or earned a special event or contest badge. */ type Event = typeof Event; export { Event }; /** This user is the streamer. Displayed with a star icon. */ declare const streamer: l.TokenSchema<"place.stream.badge.defs#streamer">; export { streamer }; /** This user is the streamer. Displayed with a star icon. */ declare const Streamer: "place.stream.badge.defs#streamer"; /** This user is the streamer. Displayed with a star icon. */ type Streamer = typeof Streamer; export { Streamer }; /** A display slot containing available issuance-based badges and which one (if any) is currently selected. */ type BadgeSlot = { $type?: "place.stream.badge.defs#badgeSlot"; /** * The currently selected badge in this slot, if any. */ "selected"?: BadgeIssuanceView; /** * All badges available for this slot. */ "available": (BadgeIssuanceView)[]; }; export type { BadgeSlot }; /** A display slot containing available issuance-based badges and which one (if any) is currently selected. */ declare const badgeSlot: l.TypedObjectSchema<"place.stream.badge.defs#badgeSlot", l.Validator>; export { badgeSlot }; /** View of a badge record, with fields resolved for display. If the DID in issuer is not the current streamplace node, the signature field shall be required. */ type BadgeView = { $type?: "place.stream.badge.defs#badgeView"; /** * Display name from the badge definition. */ "name"?: string; /** * DID of the badge issuer. */ "issuer": l.DidString; /** * Resolved image URL for the badge icon. */ "imageUrl"?: l.UriString; "badgeType": "place.stream.badge.defs#mod" | "place.stream.badge.defs#streamer" | "place.stream.badge.defs#vip" | "place.stream.badge.defs#event" | "place.stream.badge.defs#bot" | l.UnknownString; /** * DID of the badge recipient. */ "recipient": l.DidString; /** * TODO: Cryptographic signature of the badge (of a place.stream.key). */ "signature"?: string; /** * Description from the badge definition. */ "description"?: string; }; export type { BadgeView }; /** View of a badge record, with fields resolved for display. If the DID in issuer is not the current streamplace node, the signature field shall be required. */ declare const badgeView: l.TypedObjectSchema<"place.stream.badge.defs#badgeView", l.Validator>; export { badgeView }; /** A resolved view of a badge issuance, including def fields for display. */ type BadgeIssuanceView = { $type?: "place.stream.badge.defs#badgeIssuanceView"; /** * Display name from the badge definition. */ "name"?: string; /** * DID of the badge issuer. */ "issuer": l.DidString; /** * Resolved image URL for the badge icon. */ "imageUrl"?: l.UriString; /** * Whether this badge is currently in the user's chat profile selection. */ "selected"?: boolean; "badgeType": "place.stream.badge.defs#vip" | "place.stream.badge.defs#event" | l.UnknownString; /** * Description from the badge definition. */ "description"?: string; /** * CID of the place.stream.badge.issuance record. */ "issuanceCid"?: string; /** * AT URI of the place.stream.badge.issuance record. */ "issuanceUri": l.AtUriString; }; export type { BadgeIssuanceView }; /** A resolved view of a badge issuance, including def fields for display. */ declare const badgeIssuanceView: l.TypedObjectSchema<"place.stream.badge.defs#badgeIssuanceView", l.Validator>; export { badgeIssuanceView }; //# sourceMappingURL=defs.defs.d.ts.map