import type { ContextUsage, ReplacedSessionContext } from "./extensions/index.ts";
import type { AgentSessionInternalSurface as AgentSession } from "./agent-session-methods.ts";
import type { SessionStats } from "./agent-session-types.ts";
export declare function getSessionStats(this: AgentSession): SessionStats;
export declare function getContextUsage(this: AgentSession): ContextUsage | undefined;
/**
 * Export session to HTML.
 * @param outputPath Optional output path (defaults to session directory)
 * @returns Path to exported file
 */
export declare function exportToHtml(this: AgentSession, outputPath?: string): Promise<string>;
/**
 * Export the current session branch to a JSONL file.
 * Writes the session header followed by all entries on the current branch path.
 * @param outputPath Target file path. If omitted, generates a timestamped file in cwd.
 * @returns The resolved output file path.
 */
export declare function exportToJsonl(this: AgentSession, outputPath?: string): string;
/**
 * Get text content of last assistant message.
 * Useful for /copy command.
 * @returns Text content, or undefined if no assistant message exists
 */
export declare function getLastAssistantText(this: AgentSession): string | undefined;
export declare function createReplacedSessionContext(this: AgentSession): ReplacedSessionContext;
/**
 * Check if extensions have handlers for a specific event type.
 */
export declare function hasExtensionHandlers(this: AgentSession, eventType: string): boolean;
/**
 * Get the extension runner (for setting UI context and error handlers).
 */
export declare const agentSessionExportMethods: {
    getSessionStats: typeof getSessionStats;
    getContextUsage: typeof getContextUsage;
    exportToHtml: typeof exportToHtml;
    exportToJsonl: typeof exportToJsonl;
    getLastAssistantText: typeof getLastAssistantText;
    createReplacedSessionContext: typeof createReplacedSessionContext;
    hasExtensionHandlers: typeof hasExtensionHandlers;
};
//# sourceMappingURL=agent-session-export.d.ts.map