@elizaos/core 1.5.13-alpha.2 → 1.5.13-alpha.4

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.
Files changed (57) hide show
  1. package/dist/browser/index.browser.js +68 -68
  2. package/dist/browser/index.browser.js.map +11 -23
  3. package/dist/index.browser.d.ts +1 -0
  4. package/dist/index.browser.d.ts.map +1 -1
  5. package/dist/index.d.ts +1 -0
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.node.d.ts +1 -0
  8. package/dist/index.node.d.ts.map +1 -1
  9. package/dist/memory.d.ts +64 -0
  10. package/dist/memory.d.ts.map +1 -0
  11. package/dist/node/index.node.js +179 -218
  12. package/dist/node/index.node.js.map +11 -23
  13. package/dist/runtime.d.ts +23 -18
  14. package/dist/runtime.d.ts.map +1 -1
  15. package/dist/schemas/character.d.ts +2 -1
  16. package/dist/schemas/character.d.ts.map +1 -1
  17. package/dist/types/components.d.ts +32 -13
  18. package/dist/types/components.d.ts.map +1 -1
  19. package/dist/types/events.d.ts +1 -16
  20. package/dist/types/events.d.ts.map +1 -1
  21. package/dist/types/index.d.ts +0 -11
  22. package/dist/types/index.d.ts.map +1 -1
  23. package/dist/types/knowledge.d.ts +0 -29
  24. package/dist/types/knowledge.d.ts.map +1 -1
  25. package/dist/types/memory.d.ts +0 -62
  26. package/dist/types/memory.d.ts.map +1 -1
  27. package/dist/types/model.d.ts +23 -58
  28. package/dist/types/model.d.ts.map +1 -1
  29. package/dist/types/primitives.d.ts +2 -1
  30. package/dist/types/primitives.d.ts.map +1 -1
  31. package/dist/types/runtime.d.ts +7 -6
  32. package/dist/types/runtime.d.ts.map +1 -1
  33. package/dist/types/state.d.ts +1 -38
  34. package/dist/types/state.d.ts.map +1 -1
  35. package/package.json +2 -2
  36. package/dist/types/browser.d.ts +0 -127
  37. package/dist/types/browser.d.ts.map +0 -1
  38. package/dist/types/email.d.ts +0 -143
  39. package/dist/types/email.d.ts.map +0 -1
  40. package/dist/types/lp.d.ts +0 -115
  41. package/dist/types/lp.d.ts.map +0 -1
  42. package/dist/types/message.d.ts +0 -202
  43. package/dist/types/message.d.ts.map +0 -1
  44. package/dist/types/pdf.d.ts +0 -68
  45. package/dist/types/pdf.d.ts.map +0 -1
  46. package/dist/types/post.d.ts +0 -242
  47. package/dist/types/post.d.ts.map +0 -1
  48. package/dist/types/token.d.ts +0 -73
  49. package/dist/types/token.d.ts.map +0 -1
  50. package/dist/types/transcription.d.ts +0 -108
  51. package/dist/types/transcription.d.ts.map +0 -1
  52. package/dist/types/video.d.ts +0 -93
  53. package/dist/types/video.d.ts.map +0 -1
  54. package/dist/types/wallet.d.ts +0 -49
  55. package/dist/types/wallet.d.ts.map +0 -1
  56. package/dist/types/web-search.d.ts +0 -112
  57. package/dist/types/web-search.d.ts.map +0 -1
@@ -1,115 +0,0 @@
1
- import type { Metadata } from './primitives';
2
- import { Service } from './service';
3
- import type { TokenBalance } from './token';
4
- /**
5
- * A standardized representation of a liquidity pool from any DEX.
6
- */
7
- export type PoolInfo = {
8
- id: string;
9
- displayName?: string;
10
- dex: string;
11
- tokenA: {
12
- mint: string;
13
- symbol?: string;
14
- reserve?: string;
15
- decimals?: number;
16
- };
17
- tokenB: {
18
- mint: string;
19
- symbol?: string;
20
- reserve?: string;
21
- decimals?: number;
22
- };
23
- lpTokenMint?: string;
24
- apr?: number;
25
- apy?: number;
26
- tvl?: number;
27
- fee?: number;
28
- metadata?: Metadata;
29
- };
30
- /**
31
- * A standardized representation of a user's position in a liquidity pool.
32
- */
33
- export type LpPositionDetails = {
34
- poolId: string;
35
- dex: string;
36
- lpTokenBalance: TokenBalance;
37
- underlyingTokens: TokenBalance[];
38
- valueUsd?: number;
39
- accruedFees?: TokenBalance[];
40
- rewards?: TokenBalance[];
41
- metadata?: Metadata;
42
- };
43
- /**
44
- * A standardized result for blockchain transactions.
45
- */
46
- export type TransactionResult = {
47
- success: boolean;
48
- transactionId?: string;
49
- error?: string;
50
- data?: any;
51
- };
52
- /**
53
- * Abstract interface for a Liquidity Pool Service.
54
- * DEX-specific plugins (e.g., for Orca, Raydium) must implement this service
55
- * to allow the LP Manager to interact with them in a standardized way.
56
- */
57
- export declare abstract class ILpService extends Service {
58
- static readonly serviceType = "lp";
59
- readonly capabilityDescription = "Provides standardized access to DEX liquidity pools.";
60
- /**
61
- * Returns the name of the DEX this service interacts with.
62
- * @returns The name of the DEX (e.g., "Orca", "Raydium").
63
- */
64
- abstract getDexName(): string;
65
- /**
66
- * Fetches a list of available liquidity pools from the DEX.
67
- * @param tokenAMint - Optional: Filter pools by the mint address of the first token.
68
- * @param tokenBMint - Optional: Filter pools by the mint address of the second token.
69
- * @returns A promise that resolves to an array of standardized PoolInfo objects.
70
- */
71
- abstract getPools(tokenAMint?: string, tokenBMint?: string): Promise<PoolInfo[]>;
72
- /**
73
- * Adds liquidity to a specified pool.
74
- * @param params - The parameters for adding liquidity.
75
- * @returns A promise resolving to a transaction result, including the LP tokens received.
76
- */
77
- abstract addLiquidity(params: {
78
- userVault: any;
79
- poolId: string;
80
- tokenAAmountLamports: string;
81
- tokenBAmountLamports?: string;
82
- slippageBps: number;
83
- tickLowerIndex?: number;
84
- tickUpperIndex?: number;
85
- }): Promise<TransactionResult & {
86
- lpTokensReceived?: TokenBalance;
87
- }>;
88
- /**
89
- * Removes liquidity from a specified pool.
90
- * @param params - The parameters for removing liquidity.
91
- * @returns A promise resolving to a transaction result, including the tokens received.
92
- */
93
- abstract removeLiquidity(params: {
94
- userVault: any;
95
- poolId: string;
96
- lpTokenAmountLamports: string;
97
- slippageBps: number;
98
- }): Promise<TransactionResult & {
99
- tokensReceived?: TokenBalance[];
100
- }>;
101
- /**
102
- * Fetches the details of a specific LP position for a user.
103
- * @param userAccountPublicKey - The user's wallet public key.
104
- * @param poolOrPositionIdentifier - The identifier for the pool or a specific position (e.g., position NFT mint).
105
- * @returns A promise resolving to the position details or null if not found.
106
- */
107
- abstract getLpPositionDetails(userAccountPublicKey: string, poolOrPositionIdentifier: string): Promise<LpPositionDetails | null>;
108
- /**
109
- * Fetches the latest market data (e.g., APY, TVL) for a list of pools.
110
- * @param poolIds - An array of pool IDs to fetch data for.
111
- * @returns A promise resolving to a map of pool IDs to their partial market data.
112
- */
113
- abstract getMarketDataForPools(poolIds: string[]): Promise<Record<string, Partial<PoolInfo>>>;
114
- }
115
- //# sourceMappingURL=lp.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lp.d.ts","sourceRoot":"","sources":["../../src/types/lp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,YAAY,CAAC;IAC7B,gBAAgB,EAAE,YAAY,EAAE,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,YAAY,EAAE,CAAC;IAC7B,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,GAAG,CAAC;CACZ,CAAC;AAEF;;;;GAIG;AACH,8BAAsB,UAAW,SAAQ,OAAO;IAC9C,gBAAyB,WAAW,QAAQ;IAE5C,SAAgB,qBAAqB,0DAA0D;IAE/F;;;OAGG;IACH,QAAQ,CAAC,UAAU,IAAI,MAAM;IAE7B;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAEhF;;;;OAIG;IACH,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAE;QAC5B,SAAS,EAAE,GAAG,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,oBAAoB,EAAE,MAAM,CAAC;QAC7B,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,WAAW,EAAE,MAAM,CAAC;QACpB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,GAAG,OAAO,CAAC,iBAAiB,GAAG;QAAE,gBAAgB,CAAC,EAAE,YAAY,CAAA;KAAE,CAAC;IAEpE;;;;OAIG;IACH,QAAQ,CAAC,eAAe,CAAC,MAAM,EAAE;QAC/B,SAAS,EAAE,GAAG,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,qBAAqB,EAAE,MAAM,CAAC;QAC9B,WAAW,EAAE,MAAM,CAAC;KACrB,GAAG,OAAO,CAAC,iBAAiB,GAAG;QAAE,cAAc,CAAC,EAAE,YAAY,EAAE,CAAA;KAAE,CAAC;IAEpE;;;;;OAKG;IACH,QAAQ,CAAC,oBAAoB,CAC3B,oBAAoB,EAAE,MAAM,EAC5B,wBAAwB,EAAE,MAAM,GAC/B,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IAEpC;;;;OAIG;IACH,QAAQ,CAAC,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;CAC9F"}
@@ -1,202 +0,0 @@
1
- import { Service } from './service';
2
- import type { UUID } from './primitives';
3
- export interface MessageParticipant {
4
- id: UUID;
5
- name: string;
6
- username?: string;
7
- avatar?: string;
8
- status?: 'online' | 'offline' | 'away' | 'busy';
9
- }
10
- export interface MessageAttachment {
11
- id: UUID;
12
- filename: string;
13
- url: string;
14
- mimeType: string;
15
- size: number;
16
- width?: number;
17
- height?: number;
18
- duration?: number;
19
- thumbnail?: string;
20
- }
21
- export interface MessageReaction {
22
- emoji: string;
23
- count: number;
24
- users: UUID[];
25
- hasReacted: boolean;
26
- }
27
- export interface MessageReference {
28
- messageId: UUID;
29
- channelId: UUID;
30
- type: 'reply' | 'forward' | 'quote';
31
- }
32
- export interface MessageContent {
33
- text?: string;
34
- html?: string;
35
- markdown?: string;
36
- attachments?: MessageAttachment[];
37
- reactions?: MessageReaction[];
38
- reference?: MessageReference;
39
- mentions?: UUID[];
40
- embeds?: Array<{
41
- title?: string;
42
- description?: string;
43
- url?: string;
44
- image?: string;
45
- fields?: Array<{
46
- name: string;
47
- value: string;
48
- inline?: boolean;
49
- }>;
50
- }>;
51
- }
52
- export interface MessageInfo {
53
- id: UUID;
54
- channelId: UUID;
55
- senderId: UUID;
56
- content: MessageContent;
57
- timestamp: Date;
58
- edited?: Date;
59
- deleted?: Date;
60
- pinned?: boolean;
61
- thread?: {
62
- id: UUID;
63
- messageCount: number;
64
- participants: UUID[];
65
- lastMessageAt: Date;
66
- };
67
- }
68
- export interface MessageSendOptions {
69
- replyTo?: UUID;
70
- ephemeral?: boolean;
71
- silent?: boolean;
72
- scheduled?: Date;
73
- thread?: UUID;
74
- nonce?: string;
75
- }
76
- export interface MessageSearchOptions {
77
- query?: string;
78
- channelId?: UUID;
79
- senderId?: UUID;
80
- before?: Date;
81
- after?: Date;
82
- limit?: number;
83
- offset?: number;
84
- hasAttachments?: boolean;
85
- pinned?: boolean;
86
- mentions?: UUID;
87
- }
88
- export interface MessageChannel {
89
- id: UUID;
90
- name: string;
91
- type: 'text' | 'voice' | 'dm' | 'group' | 'announcement' | 'thread';
92
- description?: string;
93
- participants?: MessageParticipant[];
94
- permissions?: {
95
- canSend: boolean;
96
- canRead: boolean;
97
- canDelete: boolean;
98
- canPin: boolean;
99
- canManage: boolean;
100
- };
101
- lastMessageAt?: Date;
102
- messageCount?: number;
103
- unreadCount?: number;
104
- }
105
- /**
106
- * Interface for messaging services
107
- */
108
- export declare abstract class IMessageService extends Service {
109
- static readonly serviceType: "message";
110
- readonly capabilityDescription = "Message sending, receiving, and management capabilities";
111
- /**
112
- * Send a message to a channel
113
- * @param channelId - Channel ID
114
- * @param content - Message content
115
- * @param options - Send options
116
- * @returns Promise resolving to message ID
117
- */
118
- abstract sendMessage(channelId: UUID, content: MessageContent, options?: MessageSendOptions): Promise<UUID>;
119
- /**
120
- * Get messages from a channel
121
- * @param channelId - Channel ID
122
- * @param options - Search options
123
- * @returns Promise resolving to array of messages
124
- */
125
- abstract getMessages(channelId: UUID, options?: MessageSearchOptions): Promise<MessageInfo[]>;
126
- /**
127
- * Get a specific message by ID
128
- * @param messageId - Message ID
129
- * @returns Promise resolving to message
130
- */
131
- abstract getMessage(messageId: UUID): Promise<MessageInfo>;
132
- /**
133
- * Edit a message
134
- * @param messageId - Message ID
135
- * @param content - New message content
136
- * @returns Promise resolving when edit completes
137
- */
138
- abstract editMessage(messageId: UUID, content: MessageContent): Promise<void>;
139
- /**
140
- * Delete a message
141
- * @param messageId - Message ID
142
- * @returns Promise resolving when deletion completes
143
- */
144
- abstract deleteMessage(messageId: UUID): Promise<void>;
145
- /**
146
- * Add a reaction to a message
147
- * @param messageId - Message ID
148
- * @param emoji - Reaction emoji
149
- * @returns Promise resolving when reaction is added
150
- */
151
- abstract addReaction(messageId: UUID, emoji: string): Promise<void>;
152
- /**
153
- * Remove a reaction from a message
154
- * @param messageId - Message ID
155
- * @param emoji - Reaction emoji
156
- * @returns Promise resolving when reaction is removed
157
- */
158
- abstract removeReaction(messageId: UUID, emoji: string): Promise<void>;
159
- /**
160
- * Pin a message
161
- * @param messageId - Message ID
162
- * @returns Promise resolving when message is pinned
163
- */
164
- abstract pinMessage(messageId: UUID): Promise<void>;
165
- /**
166
- * Unpin a message
167
- * @param messageId - Message ID
168
- * @returns Promise resolving when message is unpinned
169
- */
170
- abstract unpinMessage(messageId: UUID): Promise<void>;
171
- /**
172
- * Get available channels
173
- * @returns Promise resolving to array of channels
174
- */
175
- abstract getChannels(): Promise<MessageChannel[]>;
176
- /**
177
- * Get channel information
178
- * @param channelId - Channel ID
179
- * @returns Promise resolving to channel info
180
- */
181
- abstract getChannel(channelId: UUID): Promise<MessageChannel>;
182
- /**
183
- * Create a new channel
184
- * @param name - Channel name
185
- * @param type - Channel type
186
- * @param options - Channel options
187
- * @returns Promise resolving to new channel ID
188
- */
189
- abstract createChannel(name: string, type: MessageChannel['type'], options?: {
190
- description?: string;
191
- participants?: UUID[];
192
- private?: boolean;
193
- }): Promise<UUID>;
194
- /**
195
- * Search messages across channels
196
- * @param query - Search query
197
- * @param options - Search options
198
- * @returns Promise resolving to search results
199
- */
200
- abstract searchMessages(query: string, options?: MessageSearchOptions): Promise<MessageInfo[]>;
201
- }
202
- //# sourceMappingURL=message.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../src/types/message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAe,MAAM,WAAW,CAAC;AACjD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEzC,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,IAAI,CAAC;IACT,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;CACjD;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,IAAI,CAAC;IACT,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;IAChB,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC;CACrC;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAClC,SAAS,CAAC,EAAE,eAAe,EAAE,CAAC;IAC9B,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC;IAClB,MAAM,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,KAAK,CAAC;YACb,IAAI,EAAE,MAAM,CAAC;YACb,KAAK,EAAE,MAAM,CAAC;YACd,MAAM,CAAC,EAAE,OAAO,CAAC;SAClB,CAAC,CAAC;KACJ,CAAC,CAAC;CACJ;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,IAAI,CAAC;IACT,SAAS,EAAE,IAAI,CAAC;IAChB,QAAQ,EAAE,IAAI,CAAC;IACf,OAAO,EAAE,cAAc,CAAC;IACxB,SAAS,EAAE,IAAI,CAAC;IAChB,MAAM,CAAC,EAAE,IAAI,CAAC;IACd,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE;QACP,EAAE,EAAE,IAAI,CAAC;QACT,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,EAAE,IAAI,EAAE,CAAC;QACrB,aAAa,EAAE,IAAI,CAAC;KACrB,CAAC;CACH;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,MAAM,CAAC,EAAE,IAAI,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,MAAM,CAAC,EAAE,IAAI,CAAC;IACd,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,IAAI,CAAC;IACT,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,OAAO,GAAG,cAAc,GAAG,QAAQ,CAAC;IACpE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,kBAAkB,EAAE,CAAC;IACpC,WAAW,CAAC,EAAE;QACZ,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,EAAE,OAAO,CAAC;QACjB,SAAS,EAAE,OAAO,CAAC;QACnB,MAAM,EAAE,OAAO,CAAC;QAChB,SAAS,EAAE,OAAO,CAAC;KACpB,CAAC;IACF,aAAa,CAAC,EAAE,IAAI,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,8BAAsB,eAAgB,SAAQ,OAAO;IACnD,gBAAyB,WAAW,YAAuB;IAE3D,SAAgB,qBAAqB,6DAA6D;IAElG;;;;;;OAMG;IACH,QAAQ,CAAC,WAAW,CAClB,SAAS,EAAE,IAAI,EACf,OAAO,EAAE,cAAc,EACvB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,IAAI,CAAC;IAEhB;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAE7F;;;;OAIG;IACH,QAAQ,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC;IAE1D;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAE7E;;;;OAIG;IACH,QAAQ,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAEtD;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAEnE;;;;;OAKG;IACH,QAAQ,CAAC,cAAc,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAEtE;;;;OAIG;IACH,QAAQ,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAEnD;;;;OAIG;IACH,QAAQ,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAErD;;;OAGG;IACH,QAAQ,CAAC,WAAW,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IAEjD;;;;OAIG;IACH,QAAQ,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,GAAG,OAAO,CAAC,cAAc,CAAC;IAE7D;;;;;;OAMG;IACH,QAAQ,CAAC,aAAa,CACpB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC,EAC5B,OAAO,CAAC,EAAE;QACR,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC;QACtB,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,GACA,OAAO,CAAC,IAAI,CAAC;IAEhB;;;;;OAKG;IACH,QAAQ,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;CAC/F"}
@@ -1,68 +0,0 @@
1
- import { Service } from './service';
2
- export interface PdfExtractionResult {
3
- text: string;
4
- pageCount: number;
5
- metadata?: {
6
- title?: string;
7
- author?: string;
8
- createdAt?: Date;
9
- modifiedAt?: Date;
10
- };
11
- }
12
- export interface PdfGenerationOptions {
13
- format?: 'A4' | 'A3' | 'Letter';
14
- orientation?: 'portrait' | 'landscape';
15
- margins?: {
16
- top?: number;
17
- bottom?: number;
18
- left?: number;
19
- right?: number;
20
- };
21
- header?: string;
22
- footer?: string;
23
- }
24
- export interface PdfConversionOptions {
25
- quality?: 'high' | 'medium' | 'low';
26
- outputFormat?: 'pdf' | 'pdf/a';
27
- compression?: boolean;
28
- }
29
- /**
30
- * Interface for PDF processing services
31
- */
32
- export declare abstract class IPdfService extends Service {
33
- static readonly serviceType: "pdf";
34
- readonly capabilityDescription = "PDF processing, extraction, and generation capabilities";
35
- /**
36
- * Extract text and metadata from a PDF file
37
- * @param pdfPath - Path to the PDF file or buffer
38
- * @returns Promise resolving to extracted text and metadata
39
- */
40
- abstract extractText(pdfPath: string | Buffer): Promise<PdfExtractionResult>;
41
- /**
42
- * Generate a PDF from HTML content
43
- * @param htmlContent - HTML content to convert to PDF
44
- * @param options - PDF generation options
45
- * @returns Promise resolving to PDF buffer
46
- */
47
- abstract generatePdf(htmlContent: string, options?: PdfGenerationOptions): Promise<Buffer>;
48
- /**
49
- * Convert a document to PDF format
50
- * @param filePath - Path to the document file
51
- * @param options - Conversion options
52
- * @returns Promise resolving to PDF buffer
53
- */
54
- abstract convertToPdf(filePath: string, options?: PdfConversionOptions): Promise<Buffer>;
55
- /**
56
- * Merge multiple PDF files into one
57
- * @param pdfPaths - Array of PDF file paths or buffers
58
- * @returns Promise resolving to merged PDF buffer
59
- */
60
- abstract mergePdfs(pdfPaths: (string | Buffer)[]): Promise<Buffer>;
61
- /**
62
- * Split a PDF into individual pages
63
- * @param pdfPath - Path to the PDF file or buffer
64
- * @returns Promise resolving to array of page buffers
65
- */
66
- abstract splitPdf(pdfPath: string | Buffer): Promise<Buffer[]>;
67
- }
68
- //# sourceMappingURL=pdf.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pdf.d.ts","sourceRoot":"","sources":["../../src/types/pdf.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAe,MAAM,WAAW,CAAC;AAEjD,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE;QACT,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,IAAI,CAAC;QACjB,UAAU,CAAC,EAAE,IAAI,CAAC;KACnB,CAAC;CACH;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,QAAQ,CAAC;IAChC,WAAW,CAAC,EAAE,UAAU,GAAG,WAAW,CAAC;IACvC,OAAO,CAAC,EAAE;QACR,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IACpC,YAAY,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC;IAC/B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED;;GAEG;AACH,8BAAsB,WAAY,SAAQ,OAAO;IAC/C,gBAAyB,WAAW,QAAmB;IAEvD,SAAgB,qBAAqB,6DAA6D;IAElG;;;;OAIG;IACH,QAAQ,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAE5E;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,MAAM,CAAC;IAE1F;;;;;OAKG;IACH,QAAQ,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,MAAM,CAAC;IAExF;;;;OAIG;IACH,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAElE;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;CAC/D"}
@@ -1,242 +0,0 @@
1
- import { Service } from './service';
2
- import type { UUID } from './primitives';
3
- export interface PostMedia {
4
- id: UUID;
5
- url: string;
6
- type: 'image' | 'video' | 'audio' | 'document';
7
- mimeType: string;
8
- size: number;
9
- width?: number;
10
- height?: number;
11
- duration?: number;
12
- thumbnail?: string;
13
- description?: string;
14
- altText?: string;
15
- }
16
- export interface PostLocation {
17
- name: string;
18
- address?: string;
19
- coordinates?: {
20
- latitude: number;
21
- longitude: number;
22
- };
23
- placeId?: string;
24
- }
25
- export interface PostAuthor {
26
- id: UUID;
27
- username: string;
28
- displayName: string;
29
- avatar?: string;
30
- verified?: boolean;
31
- followerCount?: number;
32
- followingCount?: number;
33
- bio?: string;
34
- website?: string;
35
- }
36
- export interface PostEngagement {
37
- likes: number;
38
- shares: number;
39
- comments: number;
40
- views?: number;
41
- hasLiked: boolean;
42
- hasShared: boolean;
43
- hasCommented: boolean;
44
- hasSaved: boolean;
45
- }
46
- export interface PostContent {
47
- text?: string;
48
- html?: string;
49
- media?: PostMedia[];
50
- location?: PostLocation;
51
- tags?: string[];
52
- mentions?: UUID[];
53
- links?: Array<{
54
- url: string;
55
- title?: string;
56
- description?: string;
57
- image?: string;
58
- }>;
59
- poll?: {
60
- question: string;
61
- options: Array<{
62
- text: string;
63
- votes: number;
64
- }>;
65
- expiresAt?: Date;
66
- multipleChoice?: boolean;
67
- };
68
- }
69
- export interface PostInfo {
70
- id: UUID;
71
- author: PostAuthor;
72
- content: PostContent;
73
- platform: string;
74
- platformId: string;
75
- url: string;
76
- createdAt: Date;
77
- editedAt?: Date;
78
- scheduledAt?: Date;
79
- engagement: PostEngagement;
80
- visibility: 'public' | 'private' | 'followers' | 'friends' | 'unlisted';
81
- replyTo?: UUID;
82
- thread?: {
83
- id: UUID;
84
- position: number;
85
- total: number;
86
- };
87
- crossPosted?: Array<{
88
- platform: string;
89
- platformId: string;
90
- url: string;
91
- }>;
92
- }
93
- export interface PostCreateOptions {
94
- platforms?: string[];
95
- scheduledAt?: Date;
96
- visibility?: PostInfo['visibility'];
97
- replyTo?: UUID;
98
- thread?: boolean;
99
- location?: PostLocation;
100
- tags?: string[];
101
- mentions?: UUID[];
102
- enableComments?: boolean;
103
- enableSharing?: boolean;
104
- contentWarning?: string;
105
- sensitive?: boolean;
106
- }
107
- export interface PostSearchOptions {
108
- query?: string;
109
- author?: UUID;
110
- platform?: string;
111
- tags?: string[];
112
- mentions?: UUID[];
113
- since?: Date;
114
- before?: Date;
115
- limit?: number;
116
- offset?: number;
117
- hasMedia?: boolean;
118
- hasLocation?: boolean;
119
- visibility?: PostInfo['visibility'];
120
- sortBy?: 'date' | 'engagement' | 'relevance';
121
- }
122
- export interface PostAnalytics {
123
- postId: UUID;
124
- platform: string;
125
- impressions: number;
126
- reach: number;
127
- engagement: PostEngagement;
128
- clicks: number;
129
- shares: number;
130
- saves: number;
131
- demographics?: {
132
- age?: Record<string, number>;
133
- gender?: Record<string, number>;
134
- location?: Record<string, number>;
135
- };
136
- topPerformingHours?: Array<{
137
- hour: number;
138
- engagement: number;
139
- }>;
140
- }
141
- /**
142
- * Interface for social media posting services
143
- */
144
- export declare abstract class IPostService extends Service {
145
- static readonly serviceType: "post";
146
- readonly capabilityDescription = "Social media posting and content management capabilities";
147
- /**
148
- * Create and publish a new post
149
- * @param content - Post content
150
- * @param options - Publishing options
151
- * @returns Promise resolving to post ID
152
- */
153
- abstract createPost(content: PostContent, options?: PostCreateOptions): Promise<UUID>;
154
- /**
155
- * Get posts from timeline or specific user
156
- * @param options - Search options
157
- * @returns Promise resolving to array of posts
158
- */
159
- abstract getPosts(options?: PostSearchOptions): Promise<PostInfo[]>;
160
- /**
161
- * Get a specific post by ID
162
- * @param postId - Post ID
163
- * @returns Promise resolving to post info
164
- */
165
- abstract getPost(postId: UUID): Promise<PostInfo>;
166
- /**
167
- * Edit an existing post
168
- * @param postId - Post ID
169
- * @param content - New post content
170
- * @returns Promise resolving when edit completes
171
- */
172
- abstract editPost(postId: UUID, content: PostContent): Promise<void>;
173
- /**
174
- * Delete a post
175
- * @param postId - Post ID
176
- * @returns Promise resolving when deletion completes
177
- */
178
- abstract deletePost(postId: UUID): Promise<void>;
179
- /**
180
- * Like/unlike a post
181
- * @param postId - Post ID
182
- * @param like - True to like, false to unlike
183
- * @returns Promise resolving when operation completes
184
- */
185
- abstract likePost(postId: UUID, like: boolean): Promise<void>;
186
- /**
187
- * Share/repost a post
188
- * @param postId - Post ID
189
- * @param comment - Optional comment when sharing
190
- * @returns Promise resolving to share ID
191
- */
192
- abstract sharePost(postId: UUID, comment?: string): Promise<UUID>;
193
- /**
194
- * Save/unsave a post
195
- * @param postId - Post ID
196
- * @param save - True to save, false to unsave
197
- * @returns Promise resolving when operation completes
198
- */
199
- abstract savePost(postId: UUID, save: boolean): Promise<void>;
200
- /**
201
- * Comment on a post
202
- * @param postId - Post ID
203
- * @param content - Comment content
204
- * @returns Promise resolving to comment ID
205
- */
206
- abstract commentOnPost(postId: UUID, content: PostContent): Promise<UUID>;
207
- /**
208
- * Get comments for a post
209
- * @param postId - Post ID
210
- * @param options - Search options
211
- * @returns Promise resolving to array of comments
212
- */
213
- abstract getComments(postId: UUID, options?: PostSearchOptions): Promise<PostInfo[]>;
214
- /**
215
- * Schedule a post for later publishing
216
- * @param content - Post content
217
- * @param scheduledAt - When to publish
218
- * @param options - Publishing options
219
- * @returns Promise resolving to scheduled post ID
220
- */
221
- abstract schedulePost(content: PostContent, scheduledAt: Date, options?: PostCreateOptions): Promise<UUID>;
222
- /**
223
- * Get analytics for a post
224
- * @param postId - Post ID
225
- * @returns Promise resolving to post analytics
226
- */
227
- abstract getPostAnalytics(postId: UUID): Promise<PostAnalytics>;
228
- /**
229
- * Get trending posts
230
- * @param options - Search options
231
- * @returns Promise resolving to trending posts
232
- */
233
- abstract getTrendingPosts(options?: PostSearchOptions): Promise<PostInfo[]>;
234
- /**
235
- * Search posts across platforms
236
- * @param query - Search query
237
- * @param options - Search options
238
- * @returns Promise resolving to search results
239
- */
240
- abstract searchPosts(query: string, options?: PostSearchOptions): Promise<PostInfo[]>;
241
- }
242
- //# sourceMappingURL=post.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"post.d.ts","sourceRoot":"","sources":["../../src/types/post.ts"],"names":[],"mappings":"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"}