@aajsa/moyasar-client
Version:
A lightweight and type-safe TypeScript client for interacting with Moyasar Payment Gateway APIs.
61 lines (59 loc) • 2.05 kB
JavaScript
const require_rolldown_runtime = require('../_virtual/rolldown_runtime.cjs');
const require_common = require('./common.cjs');
const zod_v4_mini = require_rolldown_runtime.__toESM(require("zod/v4-mini"));
//#region src/schema/settlement.ts
const RecipientTypeEnum = zod_v4_mini.z.enum([
"Entity",
"Platform",
"Beneficiary"
]);
const SettlementsResponseSchema = zod_v4_mini.z.object({
id: zod_v4_mini.z.uuid(),
recipient_type: RecipientTypeEnum,
recipient_id: zod_v4_mini.z.uuid(),
currency: zod_v4_mini.z.string().check(zod_v4_mini.z.length(3)),
amount: zod_v4_mini.z.number(),
fee: zod_v4_mini.z.number(),
tax: zod_v4_mini.z.number(),
reference: zod_v4_mini.z.string(),
settlement_count: zod_v4_mini.z.number(),
invoice_url: zod_v4_mini.z.nullish(zod_v4_mini.z.url()),
csv_list_url: zod_v4_mini.z.nullish(zod_v4_mini.z.url()),
pdf_list_url: zod_v4_mini.z.nullish(zod_v4_mini.z.url()),
created_at: zod_v4_mini.z.string()
});
const settlementsEndpoints = {
getSettlementId: {
path: "/settlements/:id",
method: "GET",
params: require_common.paramPathIdSchema,
output: SettlementsResponseSchema
},
listSettlements: {
path: "/settlements",
method: "GET",
query: zod_v4_mini.z.partial(zod_v4_mini.z.object({
page: zod_v4_mini.z.number(),
id: zod_v4_mini.z.uuid(),
"created[gt]": zod_v4_mini.z.string(),
"created[lt]": zod_v4_mini.z.string()
})),
output: zod_v4_mini.z.object({
settlements: zod_v4_mini.z.nullish(zod_v4_mini.z.array(SettlementsResponseSchema)),
meta: require_common.MetaResponseSchema
})
},
getSettlementsLines: {
path: "/settlements/:id/lines",
method: "GET",
params: require_common.paramPathIdSchema,
query: zod_v4_mini.z.partial(zod_v4_mini.z.object({ page: zod_v4_mini.z.number() })),
output: zod_v4_mini.z.object({
settlements: zod_v4_mini.z.nullish(zod_v4_mini.z.array(SettlementsResponseSchema)),
meta: require_common.MetaResponseSchema
})
}
};
//#endregion
exports.RecipientTypeEnum = RecipientTypeEnum;
exports.settlementsEndpoints = settlementsEndpoints;