import type { ToolCall } from '../../../types/ToolCall';
/**
 * Synthetic tool name used for wallet-credential chips in chat UI.
 *
 * @private internal chat-ui marker for credential usage
 */
export declare const WALLET_CREDENTIAL_TOOL_CALL_NAME = "wallet_credential_used";
/**
 * Safe, user-facing metadata shown in wallet-credential chips/modal.
 *
 * @private internal chat-ui type for credential usage details
 */
export type WalletCredentialToolCallResult = {
    credentialName: string;
    purpose: string;
    service: string;
    key: string;
    sourceToolName: string;
    sourceToolNames?: Array<string>;
};
/**
 * Parses credential-chip result payload from a tool result.
 *
 * @param result - Raw tool result payload.
 * @returns Parsed credential metadata or `null`.
 *
 * @private internal helper reused by chip and modal rendering
 */
export declare function parseWalletCredentialToolCallResult(result: unknown): WalletCredentialToolCallResult | null;
/**
 * Builds a synthetic credential chip tool call for one completed action.
 *
 * Chip is emitted only when the action actually used wallet credentials.
 *
 * @param toolCall - Original tool call.
 * @returns Synthetic credential chip tool call or `null`.
 *
 * @private internal helper for chat message chip composition
 */
export declare function createWalletCredentialToolCall(toolCall: ToolCall): ToolCall | null;
/**
 * Builds deduplicated credential chip tool calls for one assistant message.
 *
 * Tool calls are grouped by stable credential identity (`service` + credential key), so one message shows one chip per
 * credential type/scope while keeping safe details for modal display.
 *
 * @param toolCalls - Completed tool calls in one assistant message.
 * @returns Deduplicated synthetic credential chip tool calls.
 *
 * @private internal helper for chat message chip composition
 */
export declare function createDeduplicatedWalletCredentialToolCalls(toolCalls: ReadonlyArray<ToolCall> | undefined): Array<ToolCall>;
