import { z } from 'zod';
/** Aviso del finder — sección 7.4 (F06): hasta 500 caracteres, foto y contacto opcionales. */
export declare const finderMessageSchema: z.ZodObject<{
    body: z.ZodString;
    contactOptIn: z.ZodDefault<z.ZodBoolean>;
    contactPhoneE164: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    body: string;
    contactOptIn: boolean;
    contactPhoneE164?: string | undefined;
}, {
    body: string;
    contactOptIn?: boolean | undefined;
    contactPhoneE164?: string | undefined;
}>;
/**
 * Ubicación compartida por el finder — sección 7.4 (F04/F05).
 * Solo se envía después de tocar el botón de consentimiento explícito.
 */
export declare const locationConsentSchema: z.ZodObject<{
    lat: z.ZodNumber;
    lng: z.ZodNumber;
    accuracyM: z.ZodNumber;
    consentGiven: z.ZodLiteral<true>;
    /** Obligatoria solo si el marcador se movió del punto detectado por el GPS. */
    note: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    lat: number;
    lng: number;
    accuracyM: number;
    consentGiven: true;
    note?: string | undefined;
}, {
    lat: number;
    lng: number;
    accuracyM: number;
    consentGiven: true;
    note?: string | undefined;
}>;
/** Reporte de problema — sección 7.4 (F11). */
export declare const reportIssueSchema: z.ZodObject<{
    reason: z.ZodEnum<["damaged_tag", "incorrect_content", "possible_fraud", "risk_situation"]>;
    details: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    reason: "damaged_tag" | "incorrect_content" | "possible_fraud" | "risk_situation";
    details?: string | undefined;
}, {
    reason: "damaged_tag" | "incorrect_content" | "possible_fraud" | "risk_situation";
    details?: string | undefined;
}>;
export type FinderMessageInput = z.infer<typeof finderMessageSchema>;
export type LocationConsentInput = z.infer<typeof locationConsentSchema>;
export type ReportIssueInput = z.infer<typeof reportIssueSchema>;
