import { z } from "zod"
import {bufferSchema, cropRectangleSchema, dateSchema} from "./typeSchema";
import {DigitalSignature, SignatureImage} from "../../public/signature";

export const signatureImageSchema: z.ZodType<SignatureImage> = z.object({
	SignatureImagePath: z.string().optional(),
	SignatureImageBuffer: bufferSchema.optional(),
	SignatureImagePosition: cropRectangleSchema.optional(),
	SignatureImagePageIndex: z.number().optional()
})

export const digitalSignatureSchema: z.ZodType<DigitalSignature> = z.object({
	timeStampUrl: z.string().optional(),
	certificatePath: z.string().optional(),
	certificateBuffer: bufferSchema.optional(),
	certificatePassword: z.string().optional(),
	signingReason: z.string().optional(),
	signingLocation: z.string().optional(),
	signatureDate: dateSchema.optional(),
	signatureImage: signatureImageSchema.optional()
})

