import type { Square } from "square" import { defineSquareOperation } from "../lib" /** Accepts the loss on a dispute. */ export const acceptSquareDispute = defineSquareOperation< Square.AcceptDisputesRequest, Square.AcceptDisputeResponse >({ allowedKeys: ["disputeId"], description: "Accepts the loss on a dispute.", execute: (api, input) => api.disputes.accept(input), name: "Accept Square Dispute", replaySafety: "unsafe", requiredKeys: ["disputeId"], scopes: ["DISPUTES_WRITE"], }) /** Uploads a file to use as evidence in a dispute challenge. */ export const createSquareDisputeEvidenceFile = defineSquareOperation< Square.CreateEvidenceFileDisputesRequest, Square.CreateDisputeEvidenceFileResponse >({ allowedKeys: ["disputeId", "request", "imageFile"], description: "Uploads a file to use as evidence in a dispute challenge.", execute: (api, input) => api.disputes.createEvidenceFile(input), name: "Create Square Dispute Evidence File", replaySafety: "unsafe", requiredKeys: ["disputeId"], scopes: ["DISPUTES_WRITE"], }) /** Uploads text to use as evidence for a dispute challenge. */ export const createSquareDisputeEvidenceText = defineSquareOperation< Square.CreateDisputeEvidenceTextRequest, Square.CreateDisputeEvidenceTextResponse >({ allowedKeys: ["disputeId", "idempotencyKey", "evidenceType", "evidenceText"], description: "Uploads text to use as evidence for a dispute challenge.", execute: (api, input) => api.disputes.createEvidenceText(input), name: "Create Square Dispute Evidence Text", replaySafety: "safe", requiredKeys: ["disputeId", "idempotencyKey", "evidenceText"], scopes: ["DISPUTES_WRITE"], }) /** Removes specified evidence from a dispute. */ export const deleteSquareDisputeEvidence = defineSquareOperation< Square.disputes.DeleteEvidenceRequest, Square.DeleteDisputeEvidenceResponse >({ allowedKeys: ["disputeId", "evidenceId"], description: "Removes specified evidence from a dispute.", execute: (api, input) => api.disputes.evidence.delete(input), name: "Delete Square Dispute Evidence", replaySafety: "safe", requiredKeys: ["disputeId", "evidenceId"], scopes: ["DISPUTES_WRITE"], }) /** Returns a list of evidence associated with a dispute. */ export const listSquareDisputeEvidence = defineSquareOperation< Square.disputes.ListEvidenceRequest, Square.ListDisputeEvidenceResponse >({ allowedKeys: ["disputeId", "cursor"], description: "Returns a list of evidence associated with a dispute.", execute: (api, input) => api.disputes.evidence.list(input), name: "List Square Dispute Evidence", replaySafety: "safe", requiredKeys: ["disputeId"], scopes: ["DISPUTES_READ"], }) /** Returns a list of disputes associated with a particular account. */ export const listSquareDisputes = defineSquareOperation< Square.ListDisputesRequest, Square.ListDisputesResponse >({ allowedKeys: ["cursor", "states", "locationId"], description: "Returns a list of disputes associated with a particular account.", execute: (api, input) => api.disputes.list(input), name: "List Square Disputes", replaySafety: "safe", requiredKeys: [], scopes: ["DISPUTES_READ"], }) /** Returns details about a specific dispute. */ export const retrieveSquareDispute = defineSquareOperation< Square.GetDisputesRequest, Square.GetDisputeResponse >({ allowedKeys: ["disputeId"], description: "Returns details about a specific dispute.", execute: (api, input) => api.disputes.get(input), name: "Retrieve Square Dispute", replaySafety: "safe", requiredKeys: ["disputeId"], scopes: ["DISPUTES_READ"], }) /** Returns the metadata for the evidence specified in the request URL path. */ export const retrieveSquareDisputeEvidence = defineSquareOperation< Square.disputes.GetEvidenceRequest, Square.GetDisputeEvidenceResponse >({ allowedKeys: ["disputeId", "evidenceId"], description: "Returns the metadata for the evidence specified in the request URL path.", execute: (api, input) => api.disputes.evidence.get(input), name: "Retrieve Square Dispute Evidence", replaySafety: "safe", requiredKeys: ["disputeId", "evidenceId"], scopes: ["DISPUTES_READ"], }) /** Submits evidence to the cardholder's bank. */ export const submitSquareEvidence = defineSquareOperation< Square.SubmitEvidenceDisputesRequest, Square.SubmitEvidenceResponse >({ allowedKeys: ["disputeId"], description: "Submits evidence to the cardholder's bank.", execute: (api, input) => api.disputes.submitEvidence(input), name: "Submit Square Evidence", replaySafety: "unsafe", requiredKeys: ["disputeId"], scopes: ["DISPUTES_WRITE"], })