import { SnakAgentInterface } from '@snakagent/core';
import { WithdrawTroveParams } from '../schemas/index.js';
import { createTroveManager } from '../utils/troveManager.js';
export const withdrawTrove = async (
agent: SnakAgentInterface,
params: WithdrawTroveParams
): Promise<string> => {
const accountAddress = agent.getAccountCredentials()?.accountPublicKey;
try {
const troveManager = createTroveManager(agent, accountAddress);
const result = await troveManager.withdrawTransaction(params, agent);
return JSON.stringify({
status: 'success',
data: result,
});
} catch (error) {
return JSON.stringify({
status: 'error',
error: error instanceof Error ? error.message : 'Unknown error',
});
}
};