import Triqai, {
TriqaiError,
AuthenticationError,
ValidationError,
RateLimitError,
InsufficientCreditsError,
NotFoundError,
} from "triqai";
try {
await triqai.transactions.enrich({
title: "",
country: "US",
type: "expense",
});
} catch (err) {
if (err instanceof ValidationError) {
console.log("Field errors:", err.fieldErrors);
// { title: ["Title cannot be empty"] }
} else if (err instanceof RateLimitError) {
console.log("Retry after:", err.rateLimitInfo.retryAfter, "seconds");
} else if (err instanceof AuthenticationError) {
console.log("Check your API key");
} else if (err instanceof InsufficientCreditsError) {
console.log("Top up credits at https://triqai.com/dashboard");
} else if (err instanceof NotFoundError) {
console.log("Resource not found");
} else if (err instanceof TriqaiError) {
console.log(`API error ${err.statusCode}: ${err.message} [${err.code}]`);
console.log("Request ID:", err.requestId);
}
}