import { Document, Types } from "mongoose";

export type GasStationPaymentStatus =
  | "pending"
  | "completed"
  | "failed"
  | "refunded";

export interface IGasStationPayment extends Document {
  receiptNumber: string;
  payerId: Types.ObjectId;
  gasStationId: Types.ObjectId;
  stationOwnerId: Types.ObjectId;
  amountCents: number;
  currency: string;
  status: GasStationPaymentStatus;
  note?: string | null;
  tripId?: Types.ObjectId | null;
  idempotencyKey: string;
  payerWalletTxId?: Types.ObjectId | null;
  payeeWalletTxId?: Types.ObjectId | null;
  receiptEmailedAt?: Date | null;
  paidAt?: Date | null;
  failureReason?: string | null;
  createdAt: Date;
  updatedAt: Date;
}
