import type { ArkoMessageActionReader, MessageActionBotRegistryPort, MessageActionCapabilityCodec, MessageActionGateway } from '../message-action-contract.js'; import type { ArkmeArkoHistoryItem, ArkmeMessageActionCapabilities, ArkmeMessageCopyLinkResult, ArkmeSourceSendResult } from '../types.js'; export interface MessageActionForwardOptions { targetSourceRef: string; requestId: string; recordUid: string; sendAtMillis: number; commentRecordUid?: string; commentText?: string; signal?: AbortSignal; } export declare class MessageActionService { private readonly gateway; private readonly botRegistry; private readonly codec; private readonly arkoReader?; constructor(gateway: MessageActionGateway, botRegistry: MessageActionBotRegistryPort, codec: MessageActionCapabilityCodec, arkoReader?: ArkoMessageActionReader | undefined); agentConversationRef(userId: number, sessionId: number): Promise; agentHistoryItem(item: ArkmeArkoHistoryItem, userId: number): Promise>; private agentReference; chatBotMessage(input: { userId: number; chatSessionUid: string; relationUid: string; recordUid: string; messageIdentity: string; role: 'user' | 'assistant'; textContent: string; createdAtMillis: number; sequence: number; senderUserId: number; senderName: string; }): Promise<{ messageActionRef: string; messageActionCapabilities: ArkmeMessageActionCapabilities; } | undefined>; subjectBotMessage(input: { userId: number; subjectUid: string; messageIdentity: string; recordUid: string; role: 'user' | 'assistant'; textContent: string; createdAtMillis: number; }): Promise<{ messageActionRef: string; messageActionCapabilities: ArkmeMessageActionCapabilities; } | undefined>; copyLink(conversationRef: string, actionRefs: readonly string[], signal?: AbortSignal): Promise; forward(conversationRef: string, actionRefs: readonly string[], options: MessageActionForwardOptions): Promise; worldPublishSource(conversationRef: string, actionRef: string, signal?: AbortSignal): Promise<{ textContent: string; sendAtMillis: number; }>; forwardNative(snapshot: unknown, expectedUserId: number, options: MessageActionForwardOptions): Promise; forwardCodex(snapshot: unknown, expectedUserId: number, options: MessageActionForwardOptions): Promise; copyLinkNative(snapshot: unknown, expectedUserId: number, signal?: AbortSignal): Promise; private nativeMessages; private deliver; private historyFingerprint; private openActionRefs; private openConversationActions; private openConversation; private openActionRef; } //# sourceMappingURL=message-action-service.d.ts.map