import * as z from "zod/v4-mini";
import { ClosedEnum } from "../../types/enums.js";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
/**
* `INVALID` batch shipments cannot be purchased and will have to be removed, fixed, and added to the batch again.
*
* @remarks
* `VALID` batch shipments can be purchased.
* Batch shipments with the status `TRANSACTION_FAILED` were not able to be purchased and the error will be displayed on the message field
* `INCOMPLETE` batch shipments have an issue with the Address and will need to be removed, fixed, and added to the batch again.
*/
export declare const Status: {
readonly Invalid: "INVALID";
readonly Valid: "VALID";
readonly Incomplete: "INCOMPLETE";
readonly TransactionFailed: "TRANSACTION_FAILED";
};
/**
* `INVALID` batch shipments cannot be purchased and will have to be removed, fixed, and added to the batch again.
*
* @remarks
* `VALID` batch shipments can be purchased.
* Batch shipments with the status `TRANSACTION_FAILED` were not able to be purchased and the error will be displayed on the message field
* `INCOMPLETE` batch shipments have an issue with the Address and will need to be removed, fixed, and added to the batch again.
*/
export type Status = ClosedEnum;
export type BatchShipment = {
/**
* Object ID of the carrier account to be used for this shipment (will override batch default)
*/
carrierAccount?: string | undefined;
/**
* A string of up to 100 characters that can be filled with any additional information you want
*
* @remarks
* to attach to the object.
*/
metadata?: string | undefined;
/**
* A token that sets the shipping method for the batch, overriding the batch default.
*
* @remarks
* Servicelevel tokens can be found in this list
* or at this endpoint.
*/
servicelevelToken?: string | undefined;
/**
* List of Shipment and Transaction error messages.
*/
messages?: Array | undefined;
/**
* Object ID of this batch shipment. Can be used in the remove_shipments endpoint.
*/
objectId: string;
/**
* Object ID of the shipment object created for this batch shipment.
*/
shipment: string;
/**
* `INVALID` batch shipments cannot be purchased and will have to be removed, fixed, and added to the batch again.
*
* @remarks
* `VALID` batch shipments can be purchased.
* Batch shipments with the status `TRANSACTION_FAILED` were not able to be purchased and the error will be displayed on the message field
* `INCOMPLETE` batch shipments have an issue with the Address and will need to be removed, fixed, and added to the batch again.
*/
status: Status;
/**
* Object ID of the transaction object created for this batch shipment.
*/
transaction?: string | undefined;
};
/** @internal */
export declare const Status$inboundSchema: z.ZodMiniEnum;
/** @internal */
export declare const BatchShipment$inboundSchema: z.ZodMiniType;
export declare function batchShipmentFromJSON(jsonString: string): SafeParseResult;
//# sourceMappingURL=batchshipment.d.ts.map