"use strict";Object.defineProperty(exports,"__esModule",{value:!0});exports.withdrawalMethodStoreSchema=exports.withdrawalMethodUpdateSchema=exports.baseWithdrawMethodSchema=void 0;const schema_1=require("@b/utils/schema"),id={...(0,schema_1.baseStringSchema)("ID of the withdrawal method"),nullable:!0},title=(0,schema_1.baseStringSchema)("Title of the withdrawal method"),processingTime=(0,schema_1.baseStringSchema)("Expected processing time for the method"),instructions=(0,schema_1.baseStringSchema)("Instructions for using the withdrawal method"),image={...(0,schema_1.baseStringSchema)("URL to an image representing the withdrawal method"),nullable:!0},fixedFee=(0,schema_1.baseNumberSchema)("Fixed transaction fee for the method"),percentageFee=(0,schema_1.baseNumberSchema)("Percentage fee of the transaction amount"),minAmount=(0,schema_1.baseNumberSchema)("Minimum amount that can be collected using this method"),maxAmount={...(0,schema_1.baseNumberSchema)("Maximum amount that can be collected using this method"),nullable:!0},customFields={description:"Custom JSON fields relevant to the withdrawal method",type:"array",items:{type:"object",required:["title","type"],properties:{title:{type:"string",description:"The title of the field",nullable:!1},type:{type:"string",description:"The type of the field (e.g., input)",enum:["input","textarea","file","image"]},required:{type:"boolean",description:"Whether the field is required or not",default:!1}}},nullable:!0},status={...(0,schema_1.baseBooleanSchema)("Current status of the withdrawal method (active or inactive)"),nullable:!0};exports.baseWithdrawMethodSchema={id:id,title:title,processingTime:processingTime,instructions:instructions,image:image,fixedFee:fixedFee,percentageFee:percentageFee,minAmount:minAmount,maxAmount:maxAmount,customFields:customFields,status:status};exports.withdrawalMethodUpdateSchema={type:"object",properties:{title:title,processingTime:processingTime,instructions:instructions,image:image,fixedFee:fixedFee,percentageFee:percentageFee,minAmount:minAmount,maxAmount:maxAmount,customFields:customFields,status:status},required:["title","processingTime","instructions","fixedFee","percentageFee","minAmount","maxAmount","status"]};exports.withdrawalMethodStoreSchema={description:"Withdraw method created successfully",content:{"application/json":{schema:{type:"object",properties:exports.baseWithdrawMethodSchema}}}};