import { l } from '@atproto/lex'; import * as ActorDefs from '../actor/defs.defs.js'; import * as ConvoDefs from '../convo/defs.defs.js'; declare const $nsid = "chat.bsky.group.defs"; export { $nsid }; type LinkEnabledStatus = 'enabled' | 'disabled' | l.UnknownString; export type { LinkEnabledStatus }; declare const linkEnabledStatus: l.StringSchema<{ knownValues: ["enabled", "disabled"]; }>; export { linkEnabledStatus }; type JoinRule = 'anyone' | 'followedByOwner' | l.UnknownString; export type { JoinRule }; declare const joinRule: l.StringSchema<{ knownValues: ["anyone", "followedByOwner"]; }>; export { joinRule }; /** Join link view to be used within a group view, so the convo is surrounding, not specified inside this view. */ type JoinLinkView = { $type?: 'chat.bsky.group.defs#joinLinkView'; code: string; enabledStatus: LinkEnabledStatus; requireApproval: boolean; joinRule: JoinRule; createdAt: l.DatetimeString; }; export type { JoinLinkView }; /** Join link view to be used within a group view, so the convo is surrounding, not specified inside this view. */ declare const joinLinkView: l.TypedObjectSchema<"chat.bsky.group.defs#joinLinkView", l.Validator>; export { joinLinkView }; /** Preview that can be shown in feeds, including to unauthenticated viewers. */ type JoinLinkPreviewView = { $type?: 'chat.bsky.group.defs#joinLinkPreviewView'; convoId: string; code: string; name: string; owner: ActorDefs.ProfileViewBasic; memberCount: number; memberLimit: number; requireApproval: boolean; joinRule: JoinRule; /** * Present only if the request is authenticated and the user is a member of the group. */ convo?: ConvoDefs.ConvoView; viewer?: JoinLinkViewerState; }; export type { JoinLinkPreviewView }; /** Preview that can be shown in feeds, including to unauthenticated viewers. */ declare const joinLinkPreviewView: l.TypedObjectSchema<"chat.bsky.group.defs#joinLinkPreviewView", l.Validator>; export { joinLinkPreviewView }; /** Preview for a disabled join link. Carries only the code so clients can correlate with the input and render a disabled state. */ type DisabledJoinLinkPreviewView = { $type?: 'chat.bsky.group.defs#disabledJoinLinkPreviewView'; code: string; }; export type { DisabledJoinLinkPreviewView }; /** Preview for a disabled join link. Carries only the code so clients can correlate with the input and render a disabled state. */ declare const disabledJoinLinkPreviewView: l.TypedObjectSchema<"chat.bsky.group.defs#disabledJoinLinkPreviewView", l.Validator>; export { disabledJoinLinkPreviewView }; /** Preview for a join link code that does not map to an existing link. Carries only the code so clients can correlate with the input and render an invalid state. */ type InvalidJoinLinkPreviewView = { $type?: 'chat.bsky.group.defs#invalidJoinLinkPreviewView'; code: string; }; export type { InvalidJoinLinkPreviewView }; /** Preview for a join link code that does not map to an existing link. Carries only the code so clients can correlate with the input and render an invalid state. */ declare const invalidJoinLinkPreviewView: l.TypedObjectSchema<"chat.bsky.group.defs#invalidJoinLinkPreviewView", l.Validator>; export { invalidJoinLinkPreviewView }; type JoinLinkViewerState = { $type?: 'chat.bsky.group.defs#joinLinkViewerState'; requestedAt?: l.DatetimeString; }; export type { JoinLinkViewerState }; declare const joinLinkViewerState: l.TypedObjectSchema<"chat.bsky.group.defs#joinLinkViewerState", l.Validator>; export { joinLinkViewerState }; /** A join request from the perspective of the group owner. */ type JoinRequestView = { $type?: 'chat.bsky.group.defs#joinRequestView'; convoId: string; requestedBy: ActorDefs.ProfileViewBasic; requestedAt: l.DatetimeString; }; export type { JoinRequestView }; /** A join request from the perspective of the group owner. */ declare const joinRequestView: l.TypedObjectSchema<"chat.bsky.group.defs#joinRequestView", l.Validator>; export { joinRequestView }; /** A join request from the perspective of the requester, including enough group context to render the request in a list (e.g. group name, owner, member count). */ type JoinRequestConvoView = { $type?: 'chat.bsky.group.defs#joinRequestConvoView'; convoId: string; name: string; owner: ActorDefs.ProfileViewBasic; memberCount: number; memberLimit: number; viewer: JoinLinkViewerState; }; export type { JoinRequestConvoView }; /** A join request from the perspective of the requester, including enough group context to render the request in a list (e.g. group name, owner, member count). */ declare const joinRequestConvoView: l.TypedObjectSchema<"chat.bsky.group.defs#joinRequestConvoView", l.Validator>; export { joinRequestConvoView }; //# sourceMappingURL=defs.defs.d.ts.map