export interface TokenSuccess {
	scope: string;
	access_token: string;
	token_type: string;
	app_id: string;
	expires_in: number;
	nonce: string;
}

export interface TokenError {
	error: string;
	error_description: string;
}

export interface Package {
	id: string;
	currency: string;
	duration: number;
	duration_unit: DurationUnit;
	price: number;
}

export interface Discount {
	id: string;
	percentage: number;
	domain: string;
	validUntil?: Date;
}

export type DurationUnit = "weeks" | "days" | "months" | "years";

export interface Payment {
	id: string;
	corporate: string;
	agent?: string;
	agentCommission: number;
	agentValue: number;
	currency: string;
	value: number;
	isPaid: boolean;
	date: Date | string;
	corporateTransfer?: string;
	commissionTransfer?: string;
}

export interface PaypalPayment {
	orderId: string;
	userId: string;
	status: string;
	createdAt: Date;
	value: number;
	currency: string;
	subscriptionDuration: number;
	subscriptionDurationUnit: DurationUnit;
	subscriptionExpirationDate: Date;
}
