nostr-double-ratchet 0.0.63 → 0.0.65

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,7 @@
1
1
  import { IdentityKey, NostrSubscribe, NostrPublish, Rumor, ReceiptType, ExpirationOptions, ChatSettingsPayloadV1 } from "./types";
2
2
  import { StorageAdapter } from "./StorageAdapter";
3
3
  import { AppKeys } from "./AppKeys";
4
+ import { Invite } from "./Invite";
4
5
  import { Session } from "./Session";
5
6
  export type OnEventMeta = {
6
7
  fromDeviceId?: string;
@@ -28,6 +29,14 @@ export interface UserRecord {
28
29
  /** Full AppKeys for this user - single source of truth for device list */
29
30
  appKeys?: AppKeys;
30
31
  }
32
+ export interface AcceptInviteOptions {
33
+ ownerPublicKey?: string;
34
+ }
35
+ export interface AcceptInviteResult {
36
+ ownerPublicKey: string;
37
+ deviceId: string;
38
+ session: Session;
39
+ }
31
40
  export declare class SessionManager {
32
41
  private readonly storageVersion;
33
42
  private readonly versionPrefix;
@@ -48,6 +57,7 @@ export declare class SessionManager {
48
57
  private peerExpiration;
49
58
  private groupExpiration;
50
59
  private autoAdoptChatSettings;
60
+ private chatTombstones;
51
61
  private userRecordWriteChain;
52
62
  private ourInviteResponseSubscription;
53
63
  private inviteSubscriptions;
@@ -59,8 +69,11 @@ export declare class SessionManager {
59
69
  private expirationPeerKey;
60
70
  private expirationGroupPrefix;
61
71
  private expirationGroupKey;
72
+ private chatTombstonePrefix;
73
+ private chatTombstoneKey;
62
74
  private validateExpirationOptions;
63
75
  private loadExpirationSettings;
76
+ private loadChatTombstones;
64
77
  constructor(ourPublicKey: string, identityKey: IdentityKey, deviceId: string, nostrSubscribe: NostrSubscribe, nostrPublish: NostrPublish, ownerPublicKey: string, inviteKeys: InviteCredentials, storage?: StorageAdapter);
65
78
  init(): Promise<void>;
66
79
  /**
@@ -107,6 +120,8 @@ export declare class SessionManager {
107
120
  * When enabled, receiving a valid settings payload updates per-peer expiration defaults.
108
121
  */
109
122
  setAutoAdoptChatSettings(enabled: boolean): void;
123
+ isChatTombstoned(userPubkey: string): boolean;
124
+ private setChatTombstone;
110
125
  getDeviceId(): string;
111
126
  getUserRecords(): Map<string, UserRecord>;
112
127
  /**
@@ -125,10 +140,20 @@ export declare class SessionManager {
125
140
  setExpirationForGroup(groupId: string, options: ExpirationOptions | null | undefined): Promise<void>;
126
141
  close(): void;
127
142
  deactivateCurrentSessions(publicKey: string): void;
128
- deleteUser(userPubkey: string): Promise<void>;
143
+ deleteChat(userPubkey: string, options?: {
144
+ syncToOwnDevices?: boolean;
145
+ tombstone?: boolean;
146
+ }): Promise<void>;
147
+ deleteUser(userPubkey: string, options?: {
148
+ syncToOwnDevices?: boolean;
149
+ tombstone?: boolean;
150
+ }): Promise<void>;
151
+ private publishChatTombstone;
152
+ private deleteUserLocal;
129
153
  private removeSessionSubscription;
130
154
  private deleteUserSessionsFromStorage;
131
155
  private flushMessageQueue;
156
+ acceptInvite(invite: Invite, options?: AcceptInviteOptions): Promise<AcceptInviteResult>;
132
157
  sendEvent(recipientIdentityKey: string, event: Partial<Rumor>): Promise<Rumor | undefined>;
133
158
  sendMessage(recipientPublicKey: string, content: string, options?: {
134
159
  kind?: number;
@@ -152,6 +177,7 @@ export declare class SessionManager {
152
177
  setChatSettingsForPeer(peerPubkey: string, messageTtlSeconds: ChatSettingsPayloadV1["messageTtlSeconds"]): Promise<Rumor>;
153
178
  sendReceipt(recipientPublicKey: string, receiptType: ReceiptType, messageIds: string[]): Promise<Rumor | undefined>;
154
179
  sendTyping(recipientPublicKey: string): Promise<Rumor>;
180
+ private maybeHandleLocalChatTombstone;
155
181
  private maybeAutoAdoptChatSettings;
156
182
  private cleanupDevice;
157
183
  private buildMessageTags;
@@ -1 +1 @@
1
- {"version":3,"file":"SessionManager.d.ts","sourceRoot":"","sources":["../src/SessionManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SessionManager.d.ts","sourceRoot":"","sources":["../src/SessionManager.ts"],"names":[],"mappings":"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"}