import { MsgBaseCfg, ReqEnsureAppSlug, ResEnsureAppSlug, ResultVibesDiy, VibesDiyError, MsgBox, ReqOpenChat, ReqListUserSlugAppSlug, ResListUserSlugAppSlug, ReqListRecentVibes, ResListRecentVibes, ReqPinRecentVibe, ResPinRecentVibe, ReqSetUnpublish, ResSetUnpublish, ReqSetVibeChips, ResSetVibeChips, ReqAppTickStatus, ResAppTickStatus, ReqAppTickRearm, ReqAppLogs, ResAppLogs, ResAppTickRearm, ReqSetVersionLock, ResSetVersionLock, ReqGetChatDetails, ResGetChatDetails, ReqGetChatResponse, ResGetChatResponse, ReqGetVibeChips, ResGetVibeChips, ReqGetCachedSuggestion, ResGetCachedSuggestion, ReqSeedStarterChips, ResSeedStarterChips, ReqGetAppByFsId, ResGetAppByFsId, VibesDiyApiIface, OptionalAuth, Req, LLMChat, ReqEnsureUserSettings, ResEnsureUserSettings, ReqEnsureHandleAvatar, ResEnsureHandleAvatar, ReqCurateApprove, ResCurateApprove, ReqRetentionPreview, ResRetentionPreview, ReqRetentionResetClaim, ResRetentionResetClaim, ReqListApplicationChats, ResListApplicationChats, ReqListCodegenChats, ResListCodegenChats, ReqGetApplicationChat, ResGetApplicationChat, ReqEnsureAppSettings, ResEnsureAppSettings, ReqSetModeFs, ResSetModeFs, ReqForkApp, ResForkApp, ReqPublishApp, ResPublishApp, ReqSeedRemove, ResSeedRemove, ReqSeedRerun, ResSeedRerun, ReqListVersions, ResListVersions, ReqCreateInvite, ResCreateInvite, ReqRevokeInvite, ResRevokeInvite, ReqRedeemInvite, ResRedeemInviteOK, ReqHasAccessInvite, ResHasAccessInvite, ReqInviteSetRole, ResInviteSetRole, ReqListInviteGrants, ResListInviteGrants, ReqListRequestGrants, ResListRequestGrants, ReqSubscribeRequestGrants, ResSubscribeRequestGrants, ReqRequestAccess, ReqApproveRequest, ResApproveRequest, ReqRequestSetRole, ResRequestSetRole, ReqRevokeRequest, ResRevokeRequest, ReqHasAccessRequest, ResHasAccessRequest, ResRequestAccess, ReqEnsureDeveloperGrant, ResEnsureDeveloperGrant, ReqRevokeDeveloperGrant, ResRevokeDeveloperGrant, ReqListDeveloperGrants, ResListDeveloperGrants, ReqListHandleBindings, ResListHandleBindings, ReqCreateHandleBinding, ResCreateHandleBinding, ReqDeleteHandleBinding, ResDeleteHandleBinding, ReqSuggestHandleCandidates, ResSuggestHandleCandidates, ReqConfirmPlaceholderHandle, ResConfirmPlaceholderHandle, ReqAttachDraftHandle, ResAttachDraftHandle, ReqListNotifications, ResListNotifications, ReqMarkNotificationsRead, ResMarkNotificationsRead, ReqListModels, ResListModels, ReqPutDoc, ResPutDoc, ReqGetDoc, ResGetDoc, ResGetDocNotFound, ReqQueryDocs, ResQueryDocs, ReqDeleteDoc, ResDeleteDoc, ReqSubscribeDocs, ResSubscribeDocs, ReqBroadcastEphemeral, EvtDocEphemeral, ReqSubscribeViewerGrants, ResSubscribeViewerGrants, ReqSyncPull, ResSyncPull, ReqSyncPush, ResSyncPush, ReqListDbNames, ResListDbNames, ReqListDmThreads, ResListDmThreads, ReqMarkDmRead, ResMarkDmRead, ReqListMembers, ResListMembers, ReqListMemberships, ResListMemberships, ReqBillingCustomer, ResBillingCustomer, ReqBillingCheckout, ResBillingCheckout, ReqBillingRedeem, ResBillingRedeem, ReqBillingConfig, ResBillingConfig, ReqAssetUploadGrant, ReqReportGrowthMemberships, ResReportGrowthMemberships, ReqReportGrowthVibesWithData, ResReportGrowthVibesWithData, ReqReportActiveMembers, ResReportActiveMembers, ReqReportTopVibesByMembers, ResReportTopVibesByMembers, ReqReportAttributionReferrers, ResReportAttributionReferrers, ReqReportApiTraffic, ResReportApiTraffic, ReqReportCampaignHealth, ResReportCampaignHealth, ReqReportCampaignAdPreviews, ResReportCampaignAdPreviews, ReqReportActivity, ResReportActivity, ReqHomeLeaderboard, ResHomeLeaderboard, ReqCuratedNewVibes, ResCuratedNewVibes, ReqHandleProfileVibes, ResHandleProfileVibes, ReqRelatedVibes, ReqSimilarVibes, ResRelatedVibes, ResSimilarVibes, ResAssetUploadGrant, EvtRequestGrant, EvtViewerGrantsChanged, EvtUserNotification, EvtSocialEdge, ReqSocialFollow, ResSocialFollow, ReqSocialUnfollow, ResSocialUnfollow, ReqSocialApprove, ResSocialApprove, ReqSocialRemoveFollower, ResSocialRemoveFollower, ReqSocialBlock, ResSocialBlock, ReqSocialUnblock, ResSocialUnblock, ReqSocialList, ResSocialList, ReqSocialRelationship, ResSocialRelationship, ReqSocialRedeem, ResSocialRedeem, ReqSocialInvite, ResSocialInvite, ReqSocialSetPrivacy, ReqSocialImportFriendEdges, ResSocialImportFriendEdges, ResSocialSetPrivacy, ReqSubscribeSocial, ResSubscribeSocial, ReqAudienceArmState, ResAudienceArmState, ReqSetAudienceArm, ResSetAudienceArm, ReqSetAudiencePolicy, ResSetAudiencePolicy, ReqListAudienceArms, ResListAudienceArms, ResSubscribeUserNotifications, ResRegisterPushToken, ResDeregisterPushToken, ResMintSigninTicket, ReqSharedMint, ResSharedMint } from "@vibes.diy/api-types"; import { Result } from "@adviser/cement"; import { ClerkClaim, SuperThis, DashAuthType, ReqCertFromCsr, ResCertFromCsr, VerifiedClaimsResult } from "@vibes.diy/identity"; import { VibeDiyApiConnection } from "./api-connection.js"; import { ReqVibeWhoAmI, ResVibeWhoAmI, ReqVibeAccessFnSource, ResVibeAccessFnSource, ReqVibeLookupHandles, ResVibeLookupHandles, ReqVibeProfileInfo, ResVibeProfileInfo } from "@vibes.diy/vibe-types"; import { type SendMsgParam } from "./vibes-diy-api-transport.js"; export interface VibesDiyApiParam { readonly apiUrl: string; readonly ca?: string[]; readonly me?: string; fetch?(input: RequestInfo | URL, init?: RequestInit): Promise; readonly ws?: WebSocket; getToken(): Promise>; readonly msg?: MsgBaseCfg; readonly sthis?: SuperThis; readonly timeoutMs?: number; readonly shardKey?: string; readonly skipShard?: boolean; readonly codegenUserId?: string; } interface VibesDiyApiConfig { readonly apiUrl: string; readonly ca?: string[]; readonly me: string; fetch(input: RequestInfo | URL, init?: RequestInit): Promise; readonly ws?: WebSocket; getToken(): Promise>; readonly msg: MsgBaseCfg; readonly sthis: SuperThis; readonly timeoutMs: number; } type WithAuth = Omit & { readonly auth: DashAuthType; }; export declare class VibesDiyApi implements VibesDiyApiIface<{ auth?: DashAuthType; type?: string; }> { readonly cfg: VibesDiyApiConfig; private readonly pendingRequests; private readonly docChangedListeners; private readonly docChangedDetachers; private readonly docEphemeralListeners; private readonly docEphemeralDetachers; private readonly docEphemeralDropListeners; private readonly docEphemeralDropDetachers; private readonly requestGrantListeners; private readonly requestGrantDetachers; private readonly socialEdgeListeners; private readonly socialEdgeDetachers; private socialSubscribed; private readonly viewerGrantsListeners; private readonly viewerGrantsDetachers; private readonly userNotificationListeners; private readonly userNotificationDetachers; private readonly reconnectListeners; private currentConnection; private reconnectTimer; private reconnectAttempt; private connectionOpenedAt; private closed; private rollCodegenUserId; private rollBaseApiUrl; private rollShardIndex; private readonly appsApi; private readonly chatApi; private readonly settingsApi; private readonly invitesApi; private readonly docsApi; private readonly reportsApi; constructor(cfg: VibesDiyApiParam); getTokenClaims(): Promise>; close(): Promise; private rollStorageKey; private readPersistedShardIndex; private persistShardIndex; private currentApiUrl; rollCodegenShard(): boolean; currentCodegenShard(): string | undefined; getReadyConnection(): Promise; send(req: T, msgParam: SendMsgParam): Promise>, VibesDiyError>>; request(req: Q, msgParam: { tid?: string; resMatch: (res: unknown) => boolean; identityBearing?: boolean; }): Promise>; ensureAppSlug(req: Req): Promise>; listUserSlugAppSlug(req: Req): Promise>; listRecentVibes(req: Req): Promise>; pinRecentVibe(req: Req): Promise>; setUnpublish(req: Req): Promise>; setVibeChips(req: Req): Promise>; appTickStatus(req: Req): Promise>; appTickRearm(req: Req): Promise>; appLogs(req: Req): Promise>; setVersionLock(req: Req): Promise>; getChatDetails(req: Req): Promise>; getChatResponse(req: Req): Promise>; getVibeChips(req: Req): Promise>; getCachedSuggestion(req: Req): Promise>; seedStarterChips(req: Req): Promise>; getAppByFsId(req: Req): Promise>; ensureUserSettings(req: Req): Promise>; ensureHandleAvatar(req: Req): Promise>; curateApprove(req: Req): Promise>; retentionPreview(req: Req): Promise>; retentionResetClaim(req: Req): Promise>; ensureAppSettings(req: Req): Promise>; listApplicationChats(req: Req): Promise>; listCodegenChats(req: Req): Promise>; getApplicationChat(req: Req): Promise>; setSetModeFs(req: Req): Promise>; forkApp(req: Req): Promise>; publishApp(req: Req): Promise>; seedRemove(req: Req): Promise>; seedRerun(req: Req): Promise>; listVersions(req: Req): Promise>; getCertFromCsr(req: Req): Promise>; openChat(req: Req): Promise>; createInvite(req: Req): Promise>; revokeInvite(req: Req): Promise>; redeemInvite(req: Req): Promise>; hasAccessInvite(req: Req): Promise>; inviteSetRole(req: Req): Promise>; listInviteGrants(req: Req): Promise>; requestAccess(req: Req): Promise>; approveRequest(req: Req): Promise>; requestSetRole(req: Req): Promise>; revokeRequest(req: Req): Promise>; listRequestGrants(req: Req): Promise>; ensureDeveloperGrant(req: Req): Promise>; revokeDeveloperGrant(req: Req): Promise>; listDeveloperGrants(req: Req): Promise>; subscribeRequestGrants(req: Req): Promise>; subscribeViewerGrants(req: Req): Promise>; hasAccessRequest(req: Req): Promise>; listHandleBindings(req: Req): Promise>; createHandleBinding(req: Req): Promise>; deleteHandleBinding(req: Req): Promise>; suggestHandleCandidates(req: Req): Promise>; confirmPlaceholderHandle(req: Req): Promise>; attachDraftHandle(req: Req): Promise>; listNotifications(req: Req): Promise>; markNotificationsRead(req: Req): Promise>; listModels: (req: Req) => Promise>; putDoc(req: Req): Promise>; getDoc(req: Req): Promise>; queryDocs(req: Req): Promise>; deleteDoc(req: Req): Promise>; subscribeDocs(req: Req): Promise>; broadcastEphemeral(req: Req): void; listDbNames(req: Req): Promise>; syncPull(req: Req): Promise>; syncPush(req: Req): Promise>; listDmThreads(req: Req): Promise>; markDmRead(req: Req): Promise>; listMembers(req: Req): Promise>; listMemberships(req: Req): Promise>; socialFollow(req: Req): Promise>; socialUnfollow(req: Req): Promise>; socialApprove(req: Req): Promise>; socialRemoveFollower(req: Req): Promise>; socialBlock(req: Req): Promise>; socialUnblock(req: Req): Promise>; socialList(req: Req): Promise>; socialRelationship(req: Req): Promise>; socialRedeem(req: Req): Promise>; socialInvite(req: Req): Promise>; socialSetPrivacy(req: Req): Promise>; socialImportFriendEdges(req: Req): Promise>; audienceArmState(req: Req): Promise>; setAudienceArm(req: Req): Promise>; setAudiencePolicy(req: Req): Promise>; listAudienceArms(req: Req): Promise>; subscribeSocial(req: Req): Promise>; billingCustomer(req: Req): Promise>; billingCheckout(req: Req): Promise>; billingConfig(req: Req): Promise>; billingRedeem(req: Req): Promise>; whoAmI(req: Req): Promise>; accessFnSource(req: Req): Promise>; lookupHandles(req: Req): Promise>; profileInfo(req: Req): Promise>; requestAssetUploadGrant(req: Req): Promise>; reportGrowthMemberships(req: Req): Promise>; reportGrowthVibesWithData(req: Req): Promise>; reportActiveMembers(req: Req): Promise>; reportTopVibesByMembers(req: Req): Promise>; reportAttributionReferrers(req: Req): Promise>; reportApiTraffic(req: Req): Promise>; reportCampaignHealth(req: Req): Promise>; reportCampaignAdPreviews(req: Req): Promise>; reportActivity(req: Req): Promise>; homeLeaderboard(req: Req): Promise>; curatedNewVibes(req: Req): Promise>; handleProfileVibes(req: Req): Promise>; relatedVibes(req: Req): Promise>; similarVibes(req: Req): Promise>; sharedMint(req: Req): Promise>; private attachDocChangedToConnection; onDocChanged(fn: (ownerHandle: string, appSlug: string, dbName: string, docId: string) => void): () => void; private attachDocEphemeralToConnection; onDocEphemeral(fn: (evt: EvtDocEphemeral) => void): () => void; private attachDocEphemeralDropToConnection; onDocEphemeralDrop(fn: (originPeer: string) => void): () => void; private attachRequestGrantToConnection; onRequestGrant(fn: (evt: EvtRequestGrant) => void): () => void; private attachSocialEdgeToConnection; onSocialEdge(fn: (evt: EvtSocialEdge) => void): () => void; private attachViewerGrantsChangedToConnection; onViewerGrantsChanged(fn: (evt: EvtViewerGrantsChanged) => void): () => void; private attachUserNotificationToConnection; subscribeUserNotifications(req: Req<{ auth?: unknown; }>): Promise>; onUserNotification(fn: (evt: EvtUserNotification) => void): () => void; registerPushToken(req: Req<{ token: string; platform: "ios"; appVersion: string; auth?: unknown; }>): Promise>; deregisterPushToken(req: Req<{ token: string; auth?: unknown; }>): Promise>; mintSigninTicket(req: Req<{ auth?: unknown; }>): Promise>; onReconnect(fn: () => void): () => void; get _testInternals(): { docSubscriptions: readonly { ownerHandle: string; appSlug: string; dbName: string; }[]; requestGrantSubscriptions: readonly { ownerHandle: string; appSlug: string; }[]; viewerGrantsSubscriptions: readonly { ownerHandle: string; appSlug: string; }[]; docChangedListenerCount: number; requestGrantListenerCount: number; viewerGrantsListenerCount: number; currentConnection: VibeDiyApiConnection | undefined; reconnectTimer: ReturnType | undefined; }; } export * from "./api-connection.js"; export { FireflyApiAdapter } from "./firefly-api-adapter.js"; export * from "./query-docs-walk.js";