import { z } from 'zod';
import { CodeActeSchema, causeOptions, CauseSchema, CodeSchema as SousTypeCodeSchema, documentDenominationStructurelleOptions, DocumentDenominationStructurelleSchema, motifOptions, MotifSchema, provenanceOptions, ProvenanceSchema, qualiteOptions, QualiteSchema, statutAdoptionOptions, StatutAdoptionSchema, texteExterneAssocieTypeDocOptions, TexteExterneAssocieTypeDocSchema, typeBudgetOptions, TypeBudgetSchema, typeCorrectionOptions, TypeCorrectionSchema, typeJoOptions, TypeJoSchema, typeMissionOptions, TypeMissionSchema, typeTexteOptions, TypeTexteSchema } from '../raw/dossiers_legislatifs.js';
export { causeOptions, CauseSchema, CodeActeSchema, documentDenominationStructurelleOptions, DocumentDenominationStructurelleSchema, motifOptions, MotifSchema, provenanceOptions, ProvenanceSchema, qualiteOptions, QualiteSchema, SousTypeCodeSchema, statutAdoptionOptions, StatutAdoptionSchema, texteExterneAssocieTypeDocOptions, TexteExterneAssocieTypeDocSchema, typeBudgetOptions, TypeBudgetSchema, typeCorrectionOptions, TypeCorrectionSchema, typeJoOptions, TypeJoSchema, typeMissionOptions, TypeMissionSchema, typeTexteOptions, TypeTexteSchema, };
export type CodeActe = z.infer<typeof CodeActeSchema>;
export type SousTypeCode = z.infer<typeof SousTypeCodeSchema>;
export type StatutAdoption = z.infer<typeof StatutAdoptionSchema>;
export type TypeCorrection = z.infer<typeof TypeCorrectionSchema>;
export type DocumentDenominationStructurelle = z.infer<typeof DocumentDenominationStructurelleSchema>;
export type Provenance = z.infer<typeof ProvenanceSchema>;
export type Qualite = z.infer<typeof QualiteSchema>;
export type TypeBudget = z.infer<typeof TypeBudgetSchema>;
export type TypeMission = z.infer<typeof TypeMissionSchema>;
export type TypeTexte = z.infer<typeof TypeTexteSchema>;
export type Motif = z.infer<typeof MotifSchema>;
export type TypeJo = z.infer<typeof TypeJoSchema>;
export type Cause = z.infer<typeof CauseSchema>;
export type TexteExterneAssocieTypeDoc = z.infer<typeof TexteExterneAssocieTypeDocSchema>;
/**
 * Available options for document XSI types.
 *
 * Type of document in the legislative process.
 */
export declare const documentXsiTypeOptions: readonly ["accordInternational_Type", "avisConseilEtat_Type", "documentEtudeImpact_Type", "rapportParlementaire_Type", "texteLoi_Type"];
/**
 * Zod schema for document XSI types.
 */
export declare const DocumentXsiTypeSchema: z.ZodEnum<{
    accordInternational_Type: "accordInternational_Type";
    avisConseilEtat_Type: "avisConseilEtat_Type";
    documentEtudeImpact_Type: "documentEtudeImpact_Type";
    rapportParlementaire_Type: "rapportParlementaire_Type";
    texteLoi_Type: "texteLoi_Type";
}>;
/**
 * Type representing a document XSI type.
 */
export type DocumentXsiType = z.infer<typeof DocumentXsiTypeSchema>;
/**
 * Available options for dossier parlementaire XSI types.
 *
 * Types of parliamentary dossiers based on their nature and purpose.
 */
export declare const dossierParlementaireXsiTypeOptions: readonly ["DossierCommissionEnquete_Type", "DossierIniativeExecutif_Type", "DossierLegislatif_Type", "DossierMissionControle_Type", "DossierMissionInformation_Type", "DossierResolutionAN"];
/**
 * Zod schema for dossier parlementaire XSI types.
 */
export declare const DossierParlementaireXsiTypeSchema: z.ZodEnum<{
    DossierCommissionEnquete_Type: "DossierCommissionEnquete_Type";
    DossierIniativeExecutif_Type: "DossierIniativeExecutif_Type";
    DossierLegislatif_Type: "DossierLegislatif_Type";
    DossierMissionControle_Type: "DossierMissionControle_Type";
    DossierMissionInformation_Type: "DossierMissionInformation_Type";
    DossierResolutionAN: "DossierResolutionAN";
}>;
/**
 * Type representing a dossier parlementaire XSI type.
 */
export type DossierParlementaireXsiType = z.infer<typeof DossierParlementaireXsiTypeSchema>;
/**
 * Available options for acte législatif XSI types.
 *
 * Types of legislative acts representing different steps in the parliamentary process.
 */
export declare const acteLegislatifXsiTypeOptions: readonly ["Adoption_Europe_Type", "ConclusionEtapeCC_Type", "ConvocationCongres_Type", "CreationOrganeTemporaire_Type", "DecisionMotionCensure_Type", "DecisionRecevabiliteBureau_Type", "Decision_Type", "DeclarationGouvernement_Type", "DepotAccordInternational_Type", "DepotAvisConseilEtat_Type", "DepotInitiativeNavette_Type", "DepotInitiative_Type", "DepotLettreRectificative_Type", "DepotMotionCensure_Type", "DepotMotionReferendaire_Type", "DepotRapport_Type", "DiscussionCommission_Type", "DiscussionSeancePublique_Type", "Etape_Type", "EtudeImpact_Type", "MotionProcedure_Type", "NominRapporteurs_Type", "ProcedureAccelere_Type", "Promulgation_Type", "RenvoiPrealable_Type", "RenvoiCMP_Type", "RetraitInitiative_Type", "SaisieComAvis_Type", "SaisieComFond_Type", "SaisineConseilConstit_Type"];
/**
 * Zod schema for acte législatif XSI types.
 */
export declare const ActeLegislatifXsiTypeSchema: z.ZodEnum<{
    Adoption_Europe_Type: "Adoption_Europe_Type";
    ConclusionEtapeCC_Type: "ConclusionEtapeCC_Type";
    ConvocationCongres_Type: "ConvocationCongres_Type";
    CreationOrganeTemporaire_Type: "CreationOrganeTemporaire_Type";
    DecisionMotionCensure_Type: "DecisionMotionCensure_Type";
    DecisionRecevabiliteBureau_Type: "DecisionRecevabiliteBureau_Type";
    Decision_Type: "Decision_Type";
    DeclarationGouvernement_Type: "DeclarationGouvernement_Type";
    DepotAccordInternational_Type: "DepotAccordInternational_Type";
    DepotAvisConseilEtat_Type: "DepotAvisConseilEtat_Type";
    DepotInitiativeNavette_Type: "DepotInitiativeNavette_Type";
    DepotInitiative_Type: "DepotInitiative_Type";
    DepotLettreRectificative_Type: "DepotLettreRectificative_Type";
    DepotMotionCensure_Type: "DepotMotionCensure_Type";
    DepotMotionReferendaire_Type: "DepotMotionReferendaire_Type";
    DepotRapport_Type: "DepotRapport_Type";
    DiscussionCommission_Type: "DiscussionCommission_Type";
    DiscussionSeancePublique_Type: "DiscussionSeancePublique_Type";
    Etape_Type: "Etape_Type";
    EtudeImpact_Type: "EtudeImpact_Type";
    MotionProcedure_Type: "MotionProcedure_Type";
    NominRapporteurs_Type: "NominRapporteurs_Type";
    ProcedureAccelere_Type: "ProcedureAccelere_Type";
    Promulgation_Type: "Promulgation_Type";
    RenvoiPrealable_Type: "RenvoiPrealable_Type";
    RenvoiCMP_Type: "RenvoiCMP_Type";
    RetraitInitiative_Type: "RetraitInitiative_Type";
    SaisieComAvis_Type: "SaisieComAvis_Type";
    SaisieComFond_Type: "SaisieComFond_Type";
    SaisineConseilConstit_Type: "SaisineConseilConstit_Type";
}>;
/**
 * Type representing an acte législatif XSI type.
 */
export type ActeLegislatifXsiType = z.infer<typeof ActeLegislatifXsiTypeSchema>;
/**
 * Procedure parlementaire (code + libellé)
 *
 * Code et libellé de la procédure législative.
 * Code and label for the legislative procedure.
 *
 * @see {@link http://www2.assemblee-nationale.fr/decouvrir-l-assemblee/role-et-pouvoirs-de-l-assemblee-nationale/les-fonctions-de-l-assemblee-nationale/les-fonctions-legislatives/la-procedure-legislative | procédure législative}
 */
export declare const ProcedureParlementaireCleanSchema: z.ZodObject<{
    code: z.ZodString;
    libelle: z.ZodString;
}, z.core.$strip>;
export type ProcedureParlementaireClean = z.infer<typeof ProcedureParlementaireCleanSchema>;
/**
 * Sous-type clean
 *
 * Sub-classification of document type.
 */
export declare const SousTypeCleanSchema: z.ZodObject<{
    code: z.ZodEnum<{
        ACCPRESRP: "ACCPRESRP";
        APPART1515: "APPART1515";
        APPART341: "APPART341";
        APPLOI: "APPLOI";
        AUE: "AUE";
        AUTRATCONV: "AUTRATCONV";
        AVECVOTE: "AVECVOTE";
        CENSURE492: "CENSURE492";
        CENSURE493: "CENSURE493";
        COMENQ: "COMENQ";
        COMPA: "COMPA";
        COMSPCPTE: "COMSPCPTE";
        CONST: "CONST";
        CTRLBUDG: "CTRLBUDG";
        DIVERS: "DIVERS";
        ENGRESPTXT: "ENGRESPTXT";
        ENQU: "ENQU";
        FIN: "FIN";
        FINGEST: "FINGEST";
        FINRECT: "FINRECT";
        FINSSOC: "FINSSOC";
        FINSSOCREC: "FINSSOCREC";
        IMPACTLOIS: "IMPACTLOIS";
        LEGDELEGAN: "LEGDELEGAN";
        MINFOCOMPER: "MINFOCOMPER";
        MODREGLTAN: "MODREGLTAN";
        NOTEOPECST: "NOTEOPECST";
        OFFPARL: "OFFPARL";
        ORG: "ORG";
        PETITION: "PETITION";
        PRESIDAGE: "PRESIDAGE";
        PRESIDASS: "PRESIDASS";
        PRESIDREP: "PRESIDREP";
        PROPACTCOM: "PROPACTCOM";
        PRPDIT: "PRPDIT";
        RECT: "RECT";
        REFART11: "REFART11";
        RGLTBUDG: "RGLTBUDG";
        RGLTBUDG2: "RGLTBUDG2";
        SUPP: "SUPP";
        SUSPOURS: "SUSPOURS";
        TVXINSTITEUROP: "TVXINSTITEUROP";
    }>;
    libelle: z.ZodOptional<z.ZodString>;
    libelleEdition: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export type SousTypeClean = z.infer<typeof SousTypeCleanSchema>;
/**
 * Famille clean
 *
 * Family classification of a document with depot, classe, and optionally espece.
 */
export declare const FamilleCleanSchema: z.ZodObject<{
    depot: z.ZodObject<{
        code: z.ZodString;
        libelle: z.ZodString;
    }, z.core.$strip>;
    classe: z.ZodObject<{
        code: z.ZodString;
        libelle: z.ZodString;
    }, z.core.$strip>;
    espece: z.ZodOptional<z.ZodObject<{
        code: z.ZodString;
        libelle: z.ZodString;
    }, z.core.$strip>>;
}, z.core.$strip>;
export type FamilleClean = z.infer<typeof FamilleCleanSchema>;
/**
 * Classification clean
 *
 * Document classification including family, type, sub-type, and adoption status.
 */
export declare const ClassificationCleanSchema: z.ZodObject<{
    famille: z.ZodOptional<z.ZodObject<{
        depot: z.ZodObject<{
            code: z.ZodString;
            libelle: z.ZodString;
        }, z.core.$strip>;
        classe: z.ZodObject<{
            code: z.ZodString;
            libelle: z.ZodString;
        }, z.core.$strip>;
        espece: z.ZodOptional<z.ZodObject<{
            code: z.ZodString;
            libelle: z.ZodString;
        }, z.core.$strip>>;
    }, z.core.$strip>>;
    type: z.ZodObject<{
        code: z.ZodString;
        libelle: z.ZodString;
    }, z.core.$strip>;
    sousType: z.ZodOptional<z.ZodObject<{
        code: z.ZodEnum<{
            ACCPRESRP: "ACCPRESRP";
            APPART1515: "APPART1515";
            APPART341: "APPART341";
            APPLOI: "APPLOI";
            AUE: "AUE";
            AUTRATCONV: "AUTRATCONV";
            AVECVOTE: "AVECVOTE";
            CENSURE492: "CENSURE492";
            CENSURE493: "CENSURE493";
            COMENQ: "COMENQ";
            COMPA: "COMPA";
            COMSPCPTE: "COMSPCPTE";
            CONST: "CONST";
            CTRLBUDG: "CTRLBUDG";
            DIVERS: "DIVERS";
            ENGRESPTXT: "ENGRESPTXT";
            ENQU: "ENQU";
            FIN: "FIN";
            FINGEST: "FINGEST";
            FINRECT: "FINRECT";
            FINSSOC: "FINSSOC";
            FINSSOCREC: "FINSSOCREC";
            IMPACTLOIS: "IMPACTLOIS";
            LEGDELEGAN: "LEGDELEGAN";
            MINFOCOMPER: "MINFOCOMPER";
            MODREGLTAN: "MODREGLTAN";
            NOTEOPECST: "NOTEOPECST";
            OFFPARL: "OFFPARL";
            ORG: "ORG";
            PETITION: "PETITION";
            PRESIDAGE: "PRESIDAGE";
            PRESIDASS: "PRESIDASS";
            PRESIDREP: "PRESIDREP";
            PROPACTCOM: "PROPACTCOM";
            PRPDIT: "PRPDIT";
            RECT: "RECT";
            REFART11: "REFART11";
            RGLTBUDG: "RGLTBUDG";
            RGLTBUDG2: "RGLTBUDG2";
            SUPP: "SUPP";
            SUSPOURS: "SUSPOURS";
            TVXINSTITEUROP: "TVXINSTITEUROP";
        }>;
        libelle: z.ZodOptional<z.ZodString>;
        libelleEdition: z.ZodOptional<z.ZodString>;
    }, z.core.$strip>>;
    statutAdoption: z.ZodOptional<z.ZodEnum<{
        ADOPTCOM: "ADOPTCOM";
        ADOPTSEANCE: "ADOPTSEANCE";
        REJETSEANCE: "REJETSEANCE";
    }>>;
}, z.core.$strip>;
export type ClassificationClean = z.infer<typeof ClassificationCleanSchema>;
/**
 * Chrono (dates du cycle de vie) clean
 *
 * Chronology of important dates in the document's lifecycle.
 */
export declare const ChronoCleanSchema: z.ZodObject<{
    dateCreation: z.ZodPipe<z.ZodTransform<string | Date | undefined, unknown>, z.ZodOptional<z.ZodDate>>;
    dateDepot: z.ZodPipe<z.ZodTransform<string | Date | undefined, unknown>, z.ZodOptional<z.ZodDate>>;
    datePublication: z.ZodPipe<z.ZodTransform<string | Date | undefined, unknown>, z.ZodOptional<z.ZodDate>>;
    datePublicationWeb: z.ZodPipe<z.ZodTransform<string | Date | undefined, unknown>, z.ZodOptional<z.ZodDate>>;
}, z.core.$strip>;
export type ChronoClean = z.infer<typeof ChronoCleanSchema>;
/**
 * Cycle de vie clean
 *
 * Lifecycle information for a document, containing chronological dates.
 */
export declare const CycleDeVieCleanSchema: z.ZodObject<{
    chrono: z.ZodObject<{
        dateCreation: z.ZodPipe<z.ZodTransform<string | Date | undefined, unknown>, z.ZodOptional<z.ZodDate>>;
        dateDepot: z.ZodPipe<z.ZodTransform<string | Date | undefined, unknown>, z.ZodOptional<z.ZodDate>>;
        datePublication: z.ZodPipe<z.ZodTransform<string | Date | undefined, unknown>, z.ZodOptional<z.ZodDate>>;
        datePublicationWeb: z.ZodPipe<z.ZodTransform<string | Date | undefined, unknown>, z.ZodOptional<z.ZodDate>>;
    }, z.core.$strip>;
}, z.core.$strip>;
export type CycleDeVieClean = z.infer<typeof CycleDeVieCleanSchema>;
/**
 * Titres clean
 *
 * Document titles (full and short versions).
 */
export declare const TitresCleanSchema: z.ZodObject<{
    titrePrincipal: z.ZodString;
    titrePrincipalCourt: z.ZodString;
}, z.core.$strip>;
export type TitresClean = z.infer<typeof TitresCleanSchema>;
/**
 * Auteur acteur clean
 *
 * Author information including actor reference and quality/role.
 * Note: unwrapped from raw, no nested acteur object
 */
export declare const AuteurActeurCleanSchema: z.ZodObject<{
    acteurRef: z.ZodString;
    qualite: z.ZodEnum<{
        auteur: "auteur";
        cosignataire: "cosignataire";
        rapporteur: "rapporteur";
        "rapporteur g\u00E9n\u00E9ral": "rapporteur général";
        "rapporteur pour avis": "rapporteur pour avis";
        "rapporteur sp\u00E9cial": "rapporteur spécial";
    }>;
}, z.core.$strip>;
export type AuteurActeurClean = z.infer<typeof AuteurActeurCleanSchema>;
/**
 * Auteur clean (either acteur or organeRef)
 *
 * Author of a document - can be either an individual actor or an organization.
 * L'organe auquel est rattaché l'auteur et sa qualité.
 */
export declare const AuteurCleanSchema: z.ZodObject<{
    acteur: z.ZodOptional<z.ZodObject<{
        acteurRef: z.ZodString;
        qualite: z.ZodEnum<{
            auteur: "auteur";
            cosignataire: "cosignataire";
            rapporteur: "rapporteur";
            "rapporteur g\u00E9n\u00E9ral": "rapporteur général";
            "rapporteur pour avis": "rapporteur pour avis";
            "rapporteur sp\u00E9cial": "rapporteur spécial";
        }>;
    }, z.core.$strip>>;
    organeRef: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export type AuteurClean = z.infer<typeof AuteurCleanSchema>;
/**
 * Correction clean
 *
 * Correction information for a document.
 */
export declare const CorrectionCleanSchema: z.ZodObject<{
    typeCorrection: z.ZodEnum<{
        Rectifié: "Rectifié";
    }>;
    niveauCorrection: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export type CorrectionClean = z.infer<typeof CorrectionCleanSchema>;
/**
 * Notice clean
 *
 * Notice information including adoption status.
 */
export declare const NoticeCleanSchema: z.ZodObject<{
    numNotice: z.ZodOptional<z.ZodString>;
    formule: z.ZodOptional<z.ZodString>;
    adoptionConforme: z.ZodBoolean;
}, z.core.$strip>;
export type NoticeClean = z.infer<typeof NoticeCleanSchema>;
/**
 * Imprimerie clean
 *
 * Printing information for physical document copies.
 * Note: DIAN → dian, ISBN → isbn, ISSN → issn (renamed by cleaner)
 */
export declare const ImprimerieCleanSchema: z.ZodObject<{
    dian: z.ZodOptional<z.ZodString>;
    isbn: z.ZodOptional<z.ZodString>;
    issn: z.ZodOptional<z.ZodString>;
    nbPage: z.ZodOptional<z.ZodString>;
    prix: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export type ImprimerieClean = z.infer<typeof ImprimerieCleanSchema>;
/**
 * Theme clean
 *
 * Thematic keyword for indexing.
 */
export declare const ThemeCleanSchema: z.ZodObject<{
    libelleTheme: z.ZodString;
}, z.core.$strip>;
export type ThemeClean = z.infer<typeof ThemeCleanSchema>;
/**
 * Themes clean
 *
 * Collection of themes with a level indicator.
 */
export declare const ThemesCleanSchema: z.ZodObject<{
    "@niveau": z.ZodString;
    theme: z.ZodObject<{
        libelleTheme: z.ZodString;
    }, z.core.$strip>;
}, z.core.$strip>;
export type ThemesClean = z.infer<typeof ThemesCleanSchema>;
/**
 * Indexation clean
 *
 * Mots clés destinés à l'indexation des dossiers et documents.
 * Uniquement pour la XIV législature.
 *
 * @see {@link https://git.en-root.org/tricoteuses/data.tricoteuses.fr/Dossiers_Legislatifs_XIV | la XIV législature}
 */
export declare const IndexationCleanSchema: z.ZodObject<{
    themes: z.ZodObject<{
        "@niveau": z.ZodString;
        theme: z.ZodObject<{
            libelleTheme: z.ZodString;
        }, z.core.$strip>;
    }, z.core.$strip>;
}, z.core.$strip>;
export type IndexationClean = z.infer<typeof IndexationCleanSchema>;
/**
 * Co-signataire organe clean
 *
 * Le groupe politique auquel appartient le co-signataire et les conséquences d'un éventuel retrait de sa co-signature.
 */
export declare const CoSignataireOrganeCleanSchema: z.ZodObject<{
    organeRef: z.ZodString;
    etApparentes: z.ZodBoolean;
}, z.core.$strip>;
export type CoSignataireOrganeClean = z.infer<typeof CoSignataireOrganeCleanSchema>;
/**
 * Co-signataire element clean
 *
 * Co-signer of a document with signature dates and organizational affiliation.
 * Note: acteurRef unwrapped from nested acteur.acteurRef
 */
export declare const CoSignataireElementCleanSchema: z.ZodObject<{
    acteurRef: z.ZodOptional<z.ZodString>;
    dateCosignature: z.ZodString;
    dateRetraitCosignature: z.ZodOptional<z.ZodString>;
    edite: z.ZodBoolean;
    organe: z.ZodOptional<z.ZodObject<{
        organeRef: z.ZodString;
        etApparentes: z.ZodBoolean;
    }, z.core.$strip>>;
}, z.core.$strip>;
export type CoSignataireElementClean = z.infer<typeof CoSignataireElementCleanSchema>;
/**
 * Amendements séance clean
 *
 * Détermine si le texte est susceptible d'être amendé lors d'une séance publique.
 */
export declare const AmendementsSeanceCleanSchema: z.ZodObject<{
    amendable: z.ZodBoolean;
}, z.core.$strip>;
export type AmendementsSeanceClean = z.infer<typeof AmendementsSeanceCleanSchema>;
/**
 * Amendements commission element clean
 *
 * Commission capable of amending a text.
 */
export declare const AmendementsCommissionElementCleanSchema: z.ZodObject<{
    organeRef: z.ZodString;
    amendable: z.ZodBoolean;
}, z.core.$strip>;
export type AmendementsCommissionElementClean = z.infer<typeof AmendementsCommissionElementCleanSchema>;
/**
 * Dépôt amendements clean
 *
 * Liste des organes (commissions ou séance publique) susceptibles d'amender le texte.
 * Si le texte ne peut pas être amendé, ce champ est omis.
 * Note: amendementsCommission unwrapped from .commission array
 */
export declare const DepotAmendementsCleanSchema: z.ZodObject<{
    amendementsSeance: z.ZodObject<{
        amendable: z.ZodBoolean;
    }, z.core.$strip>;
    amendementsCommission: z.ZodOptional<z.ZodArray<z.ZodObject<{
        organeRef: z.ZodString;
        amendable: z.ZodBoolean;
    }, z.core.$strip>>>;
}, z.core.$strip>;
export type DepotAmendementsClean = z.infer<typeof DepotAmendementsCleanSchema>;
/**
 * Division clean (recursive structure - uses z.lazy)
 *
 * Sub-document or division within a document. Divisions can contain nested divisions.
 * Note: divisions unwrapped from .division array
 */
export declare const DivisionCleanSchema: z.ZodType<DivisionClean>;
export interface DivisionClean {
    xsiType: DocumentXsiType;
    uid: string;
    legislature?: string;
    cycleDeVie: CycleDeVieClean;
    denominationStructurelle: string;
    titres: TitresClean;
    divisions?: DivisionClean[];
    dossierRef: string;
    classification: ClassificationClean;
    auteurs: AuteurClean[];
    organesReferents?: string[];
    correction?: CorrectionClean;
    notice: NoticeClean;
    indexation?: IndexationClean;
    imprimerie?: ImprimerieClean;
    rapportPublie?: boolean;
}
/**
 * Document clean
 *
 * Meta information à propos d'un document attaché à un dossier législatif
 * (texte de loi, rapport de commission, etc.). Le texte du document est disponible
 * (pour les documents publiés par l'Assemblée Nationale, c'est à dire ceux dont
 * l'identifiant unique contient AN après les quatre premières lettres, PIONAN…, PRJLAN…, etc.).
 *
 * L'URL du contenu du document est construite avec le champ .legislature et .uid, par
 * exemple 15/uid/PRJLANR5L15B0003. Voir la documentation du dépôt des textes pour plus
 * d'information sur les formats disponibles.
 *
 * Note: divisions unwrapped, organesReferents unwrapped, coSignataires unwrapped
 *
 * @see {@link https://git.en-root.org/tricoteuses/data/assemblee-textes | Dépôt des textes}
 */
export declare const DocumentCleanSchema: z.ZodObject<{
    schemaVersion: z.ZodOptional<z.ZodString>;
    xsiType: z.ZodEnum<{
        accordInternational_Type: "accordInternational_Type";
        avisConseilEtat_Type: "avisConseilEtat_Type";
        documentEtudeImpact_Type: "documentEtudeImpact_Type";
        rapportParlementaire_Type: "rapportParlementaire_Type";
        texteLoi_Type: "texteLoi_Type";
    }>;
    uid: z.ZodString;
    legislature: z.ZodOptional<z.ZodString>;
    cycleDeVie: z.ZodObject<{
        chrono: z.ZodObject<{
            dateCreation: z.ZodPipe<z.ZodTransform<string | Date | undefined, unknown>, z.ZodOptional<z.ZodDate>>;
            dateDepot: z.ZodPipe<z.ZodTransform<string | Date | undefined, unknown>, z.ZodOptional<z.ZodDate>>;
            datePublication: z.ZodPipe<z.ZodTransform<string | Date | undefined, unknown>, z.ZodOptional<z.ZodDate>>;
            datePublicationWeb: z.ZodPipe<z.ZodTransform<string | Date | undefined, unknown>, z.ZodOptional<z.ZodDate>>;
        }, z.core.$strip>;
    }, z.core.$strip>;
    denominationStructurelle: z.ZodEnum<{
        Allocution: "Allocution";
        Avis: "Avis";
        Déclaration: "Déclaration";
        Lettre: "Lettre";
        Message: "Message";
        Motion: "Motion";
        "Projet de loi": "Projet de loi";
        "Proposition de loi": "Proposition de loi";
        "Proposition de r\u00E9solution": "Proposition de résolution";
        Rapport: "Rapport";
        "Rapport d'information": "Rapport d'information";
        Résolution: "Résolution";
    }>;
    provenance: z.ZodOptional<z.ZodEnum<{
        Commission: "Commission";
        Séance: "Séance";
        "Texte D\u00E9pos\u00E9": "Texte Déposé";
    }>>;
    titres: z.ZodObject<{
        titrePrincipal: z.ZodString;
        titrePrincipalCourt: z.ZodString;
    }, z.core.$strip>;
    divisions: z.ZodOptional<z.ZodArray<z.ZodType<DivisionClean, unknown, z.core.$ZodTypeInternals<DivisionClean, unknown>>>>;
    dossierRef: z.ZodString;
    classification: z.ZodObject<{
        famille: z.ZodOptional<z.ZodObject<{
            depot: z.ZodObject<{
                code: z.ZodString;
                libelle: z.ZodString;
            }, z.core.$strip>;
            classe: z.ZodObject<{
                code: z.ZodString;
                libelle: z.ZodString;
            }, z.core.$strip>;
            espece: z.ZodOptional<z.ZodObject<{
                code: z.ZodString;
                libelle: z.ZodString;
            }, z.core.$strip>>;
        }, z.core.$strip>>;
        type: z.ZodObject<{
            code: z.ZodString;
            libelle: z.ZodString;
        }, z.core.$strip>;
        sousType: z.ZodOptional<z.ZodObject<{
            code: z.ZodEnum<{
                ACCPRESRP: "ACCPRESRP";
                APPART1515: "APPART1515";
                APPART341: "APPART341";
                APPLOI: "APPLOI";
                AUE: "AUE";
                AUTRATCONV: "AUTRATCONV";
                AVECVOTE: "AVECVOTE";
                CENSURE492: "CENSURE492";
                CENSURE493: "CENSURE493";
                COMENQ: "COMENQ";
                COMPA: "COMPA";
                COMSPCPTE: "COMSPCPTE";
                CONST: "CONST";
                CTRLBUDG: "CTRLBUDG";
                DIVERS: "DIVERS";
                ENGRESPTXT: "ENGRESPTXT";
                ENQU: "ENQU";
                FIN: "FIN";
                FINGEST: "FINGEST";
                FINRECT: "FINRECT";
                FINSSOC: "FINSSOC";
                FINSSOCREC: "FINSSOCREC";
                IMPACTLOIS: "IMPACTLOIS";
                LEGDELEGAN: "LEGDELEGAN";
                MINFOCOMPER: "MINFOCOMPER";
                MODREGLTAN: "MODREGLTAN";
                NOTEOPECST: "NOTEOPECST";
                OFFPARL: "OFFPARL";
                ORG: "ORG";
                PETITION: "PETITION";
                PRESIDAGE: "PRESIDAGE";
                PRESIDASS: "PRESIDASS";
                PRESIDREP: "PRESIDREP";
                PROPACTCOM: "PROPACTCOM";
                PRPDIT: "PRPDIT";
                RECT: "RECT";
                REFART11: "REFART11";
                RGLTBUDG: "RGLTBUDG";
                RGLTBUDG2: "RGLTBUDG2";
                SUPP: "SUPP";
                SUSPOURS: "SUSPOURS";
                TVXINSTITEUROP: "TVXINSTITEUROP";
            }>;
            libelle: z.ZodOptional<z.ZodString>;
            libelleEdition: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>>;
        statutAdoption: z.ZodOptional<z.ZodEnum<{
            ADOPTCOM: "ADOPTCOM";
            ADOPTSEANCE: "ADOPTSEANCE";
            REJETSEANCE: "REJETSEANCE";
        }>>;
    }, z.core.$strip>;
    auteurs: z.ZodArray<z.ZodObject<{
        acteur: z.ZodOptional<z.ZodObject<{
            acteurRef: z.ZodString;
            qualite: z.ZodEnum<{
                auteur: "auteur";
                cosignataire: "cosignataire";
                rapporteur: "rapporteur";
                "rapporteur g\u00E9n\u00E9ral": "rapporteur général";
                "rapporteur pour avis": "rapporteur pour avis";
                "rapporteur sp\u00E9cial": "rapporteur spécial";
            }>;
        }, z.core.$strip>>;
        organeRef: z.ZodOptional<z.ZodString>;
    }, z.core.$strip>>;
    correction: z.ZodOptional<z.ZodObject<{
        typeCorrection: z.ZodEnum<{
            Rectifié: "Rectifié";
        }>;
        niveauCorrection: z.ZodOptional<z.ZodString>;
    }, z.core.$strip>>;
    notice: z.ZodObject<{
        numNotice: z.ZodOptional<z.ZodString>;
        formule: z.ZodOptional<z.ZodString>;
        adoptionConforme: z.ZodBoolean;
    }, z.core.$strip>;
    indexation: z.ZodOptional<z.ZodObject<{
        themes: z.ZodObject<{
            "@niveau": z.ZodString;
            theme: z.ZodObject<{
                libelleTheme: z.ZodString;
            }, z.core.$strip>;
        }, z.core.$strip>;
    }, z.core.$strip>>;
    imprimerie: z.ZodOptional<z.ZodObject<{
        dian: z.ZodOptional<z.ZodString>;
        isbn: z.ZodOptional<z.ZodString>;
        issn: z.ZodOptional<z.ZodString>;
        nbPage: z.ZodOptional<z.ZodString>;
        prix: z.ZodOptional<z.ZodString>;
    }, z.core.$strip>>;
    coSignataires: z.ZodOptional<z.ZodArray<z.ZodObject<{
        acteurRef: z.ZodOptional<z.ZodString>;
        dateCosignature: z.ZodString;
        dateRetraitCosignature: z.ZodOptional<z.ZodString>;
        edite: z.ZodBoolean;
        organe: z.ZodOptional<z.ZodObject<{
            organeRef: z.ZodString;
            etApparentes: z.ZodBoolean;
        }, z.core.$strip>>;
    }, z.core.$strip>>>;
    depotAmendements: z.ZodOptional<z.ZodObject<{
        amendementsSeance: z.ZodObject<{
            amendable: z.ZodBoolean;
        }, z.core.$strip>;
        amendementsCommission: z.ZodOptional<z.ZodArray<z.ZodObject<{
            organeRef: z.ZodString;
            amendable: z.ZodBoolean;
        }, z.core.$strip>>>;
    }, z.core.$strip>>;
    organesReferents: z.ZodOptional<z.ZodArray<z.ZodString>>;
    rapportPublie: z.ZodOptional<z.ZodBoolean>;
}, z.core.$strip>;
export type DocumentClean = z.infer<typeof DocumentCleanSchema>;
/**
 * Titre dossier clean
 *
 * Meta information sur le dossier législatif.
 */
export declare const TitreDossierCleanSchema: z.ZodObject<{
    titre: z.ZodString;
    titreChemin: z.ZodOptional<z.ZodString>;
    senatChemin: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export type TitreDossierClean = z.infer<typeof TitreDossierCleanSchema>;
/**
 * Initiateur acteur element clean
 *
 * Actor initiating a legislative dossier with their mandate.
 */
export declare const InitiateurActeurElementCleanSchema: z.ZodObject<{
    acteurRef: z.ZodString;
    mandatRef: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export type InitiateurActeurElementClean = z.infer<typeof InitiateurActeurElementCleanSchema>;
/**
 * Initiateur clean
 *
 * Les acteurs à l'initiative du dossier et leurs mandats au sein de l'organe à l'initiative du dossier.
 * Note: acteurs unwrapped from .acteur array, organeRef unwrapped from .organes.organe.organeRef.uid
 */
export declare const InitiateurCleanSchema: z.ZodObject<{
    acteurs: z.ZodOptional<z.ZodArray<z.ZodObject<{
        acteurRef: z.ZodString;
        mandatRef: z.ZodOptional<z.ZodString>;
    }, z.core.$strip>>>;
    organeRef: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export type InitiateurClean = z.infer<typeof InitiateurCleanSchema>;
/**
 * Fusion dossier clean
 *
 * Le dossier parlementaire est lié à un autre. Si la cause est un 'Examen commun', les deux dossiers
 * continuent d'évoluer indépendamment. Par exemple une mission d'information peut être liée au dossier
 * parlementaire qui représente le rapport produit par cette mission. Si la cause est 'Dossier absorbé',
 * il devient obsolète et le dossier absorbant prend la suite. Par exemple, lorsqu'une loi ordinaire devient
 * une loi organique, un nouveau dossier parlementaire est constitué, l'intégralité du dossier absorbé est
 * copié dans le nouveau dossier.
 */
export declare const FusionDossierCleanSchema: z.ZodObject<{
    cause: z.ZodEnum<{
        "Dossier absorb\u00E9": "Dossier absorbé";
        "Examen commun": "Examen commun";
    }>;
    dossierAbsorbantRef: z.ZodString;
}, z.core.$strip>;
export type FusionDossierClean = z.infer<typeof FusionDossierCleanSchema>;
/**
 * Rapporteur clean
 *
 * Rapporteur d'un texte législatif ou d'une étude. Un 'rapporteur spécial' produit un rapport
 * (texteAssocie débute par RAPP) ou une étude (texteAssocie débute par ETDR) alors qu'un
 * 'rapporteur pour avis' produit un avis (texteAssocie débute par AVIS).
 */
export declare const RapporteurCleanSchema: z.ZodObject<{
    acteurRef: z.ZodString;
    typeRapporteur: z.ZodEnum<{
        auteur: "auteur";
        cosignataire: "cosignataire";
        rapporteur: "rapporteur";
        "rapporteur g\u00E9n\u00E9ral": "rapporteur général";
        "rapporteur pour avis": "rapporteur pour avis";
        "rapporteur sp\u00E9cial": "rapporteur spécial";
    }>;
    etudePlfRef: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export type RapporteurClean = z.infer<typeof RapporteurCleanSchema>;
/**
 * Mission Minefi element clean (recursive structure - uses z.lazy)
 *
 * Étude réalisée pour le compte du ministère de l'économie et des finances.
 * Au premier niveau le type est toujours 'mission principale', au second niveau
 * (c'est à dire inclus dans la liste missions) le type peut être 'mission secondaire' ou 'partie de mission'.
 * Des missions secondaires (ou partie de mission) peuvent subdiviser une mission principale.
 * Par exemple la mission principale 'Action extérieure' de l'État peut contenir une partie de mission
 * 'Tourisme' qui dispose de son propre budget.
 *
 * Note: missions unwrapped from .mission array
 */
export declare const MissionMinefiElementCleanSchema: z.ZodType<MissionMinefiElementClean>;
export interface MissionMinefiElementClean {
    typeMission: TypeMission;
    codeMission?: string;
    libelleLong: string;
    libelleCourt: string;
    typeBudget: TypeBudget;
    missions?: MissionMinefiElementClean[];
}
/**
 * Etude PLF clean
 *
 * Étude du projet de loi de finance.
 * Une étude du projet de loi de finance détermine le budget général d'une mission
 * (par exemple Éducation, Défense, etc.).
 *
 * Note: rapporteurs unwrapped from .rapporteur (which could be single or array)
 *
 * @see {@link https://fr.wikipedia.org/wiki/Loi_de_finances_en_France | projet de loi de finances}
 * @see {@link https://www.performance-publique.budget.gouv.fr/ressources-documentaires/documentation-budgetaire/chiffres-cles-budget-etat | mission}
 */
export declare const EtudePlfCleanSchema: z.ZodObject<{
    uid: z.ZodString;
    organeRef: z.ZodString;
    texteAssocie: z.ZodOptional<z.ZodString>;
    rapporteurs: z.ZodOptional<z.ZodArray<z.ZodObject<{
        acteurRef: z.ZodString;
        typeRapporteur: z.ZodEnum<{
            auteur: "auteur";
            cosignataire: "cosignataire";
            rapporteur: "rapporteur";
            "rapporteur g\u00E9n\u00E9ral": "rapporteur général";
            "rapporteur pour avis": "rapporteur pour avis";
            "rapporteur sp\u00E9cial": "rapporteur spécial";
        }>;
        etudePlfRef: z.ZodOptional<z.ZodString>;
    }, z.core.$strip>>>;
    missionMinefi: z.ZodOptional<z.ZodType<MissionMinefiElementClean, unknown, z.core.$ZodTypeInternals<MissionMinefiElementClean, unknown>>>;
    ordreDiqs: z.ZodString;
    ordreCommission: z.ZodString;
}, z.core.$strip>;
export type EtudePlfClean = z.infer<typeof EtudePlfCleanSchema>;
/**
 * Fam code et libellé clean
 *
 * Code et libellé associé dont la signification dépend du champ dans lequel ils sont inclus.
 * Note: fam_code → famCode (renamed by cleaner)
 */
export declare const FamCodeEtLibelleCleanSchema: z.ZodObject<{
    famCode: z.ZodString;
    libelle: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export type FamCodeEtLibelleClean = z.infer<typeof FamCodeEtLibelleCleanSchema>;
/**
 * Libellé acte clean
 *
 * Nom et code d'un acte législatif.
 */
export declare const LibelleActeCleanSchema: z.ZodObject<{
    nomCanonique: z.ZodString;
    libelleCourt: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export type LibelleActeClean = z.infer<typeof LibelleActeCleanSchema>;
/**
 * Contribution internaute clean
 *
 * L'étude d'impact d'un projet de loi peut recueillir des contributions volontaires
 * recueillies sur Internet et dont la synthèse sera incluse dans le texte publié.
 *
 * @see {@link https://fr.wikipedia.org/wiki/Processus_l%C3%A9gislatif_en_France#%C3%89tude_d'impact | étude d'impact}
 */
export declare const ContributionInternauteCleanSchema: z.ZodObject<{
    dateOuverture: z.ZodOptional<z.ZodString>;
    dateFermeture: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export type ContributionInternauteClean = z.infer<typeof ContributionInternauteCleanSchema>;
/**
 * Texte associé element clean
 *
 * Référence à un texte associé à l'acte législatif.
 * Note: refTexteAssocie → texteAssocieRef (renamed by cleaner)
 */
export declare const TexteAssocieElementCleanSchema: z.ZodObject<{
    typeTexte: z.ZodEnum<{
        BTA: "BTA";
        TAP: "TAP";
    }>;
    texteAssocieRef: z.ZodString;
}, z.core.$strip>;
export type TexteAssocieElementClean = z.infer<typeof TexteAssocieElementCleanSchema>;
/**
 * Info JO element clean
 *
 * Informations relatives à la publication d'un texte promulgué au Journal officiel.
 * Note: typeJO → typeJo, dateJO → dateJo, numJO → numJo, referenceNOR → referenceNor (renamed by cleaner)
 *
 * @see {@link https://fr.wikipedia.org/wiki/Journal_officiel_de_la_R%C3%A9publique_fran%C3%A7aise | journal officiel}
 */
export declare const InfoJoElementCleanSchema: z.ZodObject<{
    typeJo: z.ZodEnum<{
        JO_LOI_DECRET: "JO_LOI_DECRET";
    }>;
    dateJo: z.ZodString;
    numJo: z.ZodString;
    urlLegifrance: z.ZodOptional<z.ZodString>;
    referenceNor: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export type InfoJoElementClean = z.infer<typeof InfoJoElementCleanSchema>;
/**
 * Texte européen clean
 *
 * Référence à un texte européen associé.
 */
export declare const TexteEuropeenCleanSchema: z.ZodObject<{
    typeTexteEuropeen: z.ZodString;
    titreTexteEuropeen: z.ZodString;
}, z.core.$strip>;
export type TexteEuropeenClean = z.infer<typeof TexteEuropeenCleanSchema>;
/**
 * Info JOCE clean
 *
 * Informations relatives à une publication du Journal officiel de l'Union européenne
 * qui permet de le retrouver en faisant une recherche sur le site.
 * Un exemplaire du journal officiel contient plusieurs textes.
 *
 * Note: refJOCE → refJoce, dateJOCE → dateJoce (renamed by cleaner)
 *
 * @see {@link https://fr.wikipedia.org/wiki/Journal_officiel_de_l%27Union_europ%C3%A9enne | Journal officiel de l'Union européenne}
 * @see {@link https://eur-lex.europa.eu/oj/direct-access.html | recherche sur le site}
 */
export declare const InfoJoceCleanSchema: z.ZodObject<{
    refJoce: z.ZodString;
    dateJoce: z.ZodString;
}, z.core.$strip>;
export type InfoJoceClean = z.infer<typeof InfoJoceCleanSchema>;
/**
 * Texte externe associé clean
 *
 * Référence à un texte externe associé à la promulgation (par exemple un décret d'application).
 */
export declare const TexteExterneAssocieCleanSchema: z.ZodObject<{
    typeDoc: z.ZodEnum<{
        Décret: "Décret";
    }>;
    texteRef: z.ZodString;
    titreDoc: z.ZodString;
    urlDoc: z.ZodString;
}, z.core.$strip>;
export type TexteExterneAssocieClean = z.infer<typeof TexteExterneAssocieCleanSchema>;
/**
 * Acte législatif clean (recursive structure - uses z.lazy)
 *
 * Acte Législatif. Les champs sont groupés par type d'acte législatif.
 * Chaque procédure est composée d'une hiérarchie d'actes législatifs.
 *
 * Note: actesLegislatifs unwrapped, auteurs → auteursRefs, provenance → provenanceRef,
 *       texteAssocie → texteAssocieRef, texteAdopte → texteAdopteRef, voteRefs unwrapped,
 *       rapporteurs unwrapped, textesAssocies unwrapped, infoJO → infoJo, etc.
 */
export declare const ActeLegislatifCleanSchema: z.ZodType<ActeLegislatifClean>;
export interface ActeLegislatifClean {
    xsiType: ActeLegislatifXsiType;
    uid: string;
    codeActe: CodeActe;
    libelleActe: LibelleActeClean;
    organeRef?: string;
    dateActe?: Date;
    actesLegislatifs?: ActeLegislatifClean[];
    anneeDecision?: string;
    auteurMotion?: string;
    auteursRefs?: string[];
    casSaisine?: FamCodeEtLibelleClean;
    codeLoi?: string;
    contributionInternaute?: ContributionInternauteClean;
    decision?: FamCodeEtLibelleClean;
    depotInitialLectureDefinitiveRef?: string;
    formuleDecision?: string;
    infoJo?: InfoJoElementClean;
    infoJoce?: InfoJoceClean;
    infoJoRect?: InfoJoElementClean[];
    initiateur?: InitiateurClean;
    motif?: Motif;
    numDecision?: string;
    odjRef?: string;
    provenanceRef?: string;
    rapporteurs?: RapporteurClean[];
    referenceNor?: string;
    reunionRef?: string;
    statutAdoption?: FamCodeEtLibelleClean;
    statutConclusion?: FamCodeEtLibelleClean;
    texteAdopteRef?: string;
    texteAssocieRef?: string;
    texteEuropeen?: TexteEuropeenClean;
    texteExterneAssocie?: TexteExterneAssocieClean;
    texteLoiRef?: string;
    textesAssocies?: TexteAssocieElementClean[];
    titreLoi?: string;
    typeDeclaration?: FamCodeEtLibelleClean;
    typeMotion?: FamCodeEtLibelleClean;
    typeMotionCensure?: FamCodeEtLibelleClean;
    urlConclusion?: string;
    urlEcheancierLoi?: string;
    urlLegifrance?: string;
    voteRefs?: string[];
}
/**
 * Dossier parlementaire clean
 *
 * Dossier législatif. Un dossier législatif comprend l'ensemble des travaux parlementaires
 * relatifs à un texte depuis son dépôt - par le gouvernement (projet de loi), ou par un
 * parlementaire (proposition de loi) - jusqu'à sa promulgation.
 *
 * Note: PLF → plf, actesLegislatifs unwrapped from .acteLegislatif array
 *
 * @see {@link https://www.senat.fr/recherche/aide/aide_dosleg.html | dossier législatif}
 */
export declare const DossierParlementaireCleanSchema: z.ZodObject<{
    schemaVersion: z.ZodOptional<z.ZodString>;
    xsiType: z.ZodOptional<z.ZodEnum<{
        DossierCommissionEnquete_Type: "DossierCommissionEnquete_Type";
        DossierIniativeExecutif_Type: "DossierIniativeExecutif_Type";
        DossierLegislatif_Type: "DossierLegislatif_Type";
        DossierMissionControle_Type: "DossierMissionControle_Type";
        DossierMissionInformation_Type: "DossierMissionInformation_Type";
        DossierResolutionAN: "DossierResolutionAN";
    }>>;
    uid: z.ZodString;
    legislature: z.ZodString;
    titreDossier: z.ZodObject<{
        titre: z.ZodString;
        titreChemin: z.ZodOptional<z.ZodString>;
        senatChemin: z.ZodOptional<z.ZodString>;
    }, z.core.$strip>;
    procedureParlementaire: z.ZodObject<{
        code: z.ZodString;
        libelle: z.ZodString;
    }, z.core.$strip>;
    initiateur: z.ZodOptional<z.ZodObject<{
        acteurs: z.ZodOptional<z.ZodArray<z.ZodObject<{
            acteurRef: z.ZodString;
            mandatRef: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>>>;
        organeRef: z.ZodOptional<z.ZodString>;
    }, z.core.$strip>>;
    actesLegislatifs: z.ZodOptional<z.ZodArray<z.ZodType<ActeLegislatifClean, unknown, z.core.$ZodTypeInternals<ActeLegislatifClean, unknown>>>>;
    fusionDossier: z.ZodOptional<z.ZodObject<{
        cause: z.ZodEnum<{
            "Dossier absorb\u00E9": "Dossier absorbé";
            "Examen commun": "Examen commun";
        }>;
        dossierAbsorbantRef: z.ZodString;
    }, z.core.$strip>>;
    indexation: z.ZodOptional<z.ZodObject<{
        themes: z.ZodObject<{
            "@niveau": z.ZodString;
            theme: z.ZodObject<{
                libelleTheme: z.ZodString;
            }, z.core.$strip>;
        }, z.core.$strip>;
    }, z.core.$strip>>;
    plf: z.ZodOptional<z.ZodArray<z.ZodObject<{
        uid: z.ZodString;
        organeRef: z.ZodString;
        texteAssocie: z.ZodOptional<z.ZodString>;
        rapporteurs: z.ZodOptional<z.ZodArray<z.ZodObject<{
            acteurRef: z.ZodString;
            typeRapporteur: z.ZodEnum<{
                auteur: "auteur";
                cosignataire: "cosignataire";
                rapporteur: "rapporteur";
                "rapporteur g\u00E9n\u00E9ral": "rapporteur général";
                "rapporteur pour avis": "rapporteur pour avis";
                "rapporteur sp\u00E9cial": "rapporteur spécial";
            }>;
            etudePlfRef: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>>>;
        missionMinefi: z.ZodOptional<z.ZodType<MissionMinefiElementClean, unknown, z.core.$ZodTypeInternals<MissionMinefiElementClean, unknown>>>;
        ordreDiqs: z.ZodString;
        ordreCommission: z.ZodString;
    }, z.core.$strip>>>;
}, z.core.$strip>;
export type DossierParlementaireClean = z.infer<typeof DossierParlementaireCleanSchema>;
/**
 * Dossiers législatifs clean (main export structure)
 *
 * Structure principale exportant l'ensemble des dossiers législatifs et documents associés.
 */
export declare const DossiersLegislatifsCleanSchema: z.ZodObject<{
    textesLegislatifs: z.ZodArray<z.ZodObject<{
        schemaVersion: z.ZodOptional<z.ZodString>;
        xsiType: z.ZodEnum<{
            accordInternational_Type: "accordInternational_Type";
            avisConseilEtat_Type: "avisConseilEtat_Type";
            documentEtudeImpact_Type: "documentEtudeImpact_Type";
            rapportParlementaire_Type: "rapportParlementaire_Type";
            texteLoi_Type: "texteLoi_Type";
        }>;
        uid: z.ZodString;
        legislature: z.ZodOptional<z.ZodString>;
        cycleDeVie: z.ZodObject<{
            chrono: z.ZodObject<{
                dateCreation: z.ZodPipe<z.ZodTransform<string | Date | undefined, unknown>, z.ZodOptional<z.ZodDate>>;
                dateDepot: z.ZodPipe<z.ZodTransform<string | Date | undefined, unknown>, z.ZodOptional<z.ZodDate>>;
                datePublication: z.ZodPipe<z.ZodTransform<string | Date | undefined, unknown>, z.ZodOptional<z.ZodDate>>;
                datePublicationWeb: z.ZodPipe<z.ZodTransform<string | Date | undefined, unknown>, z.ZodOptional<z.ZodDate>>;
            }, z.core.$strip>;
        }, z.core.$strip>;
        denominationStructurelle: z.ZodEnum<{
            Allocution: "Allocution";
            Avis: "Avis";
            Déclaration: "Déclaration";
            Lettre: "Lettre";
            Message: "Message";
            Motion: "Motion";
            "Projet de loi": "Projet de loi";
            "Proposition de loi": "Proposition de loi";
            "Proposition de r\u00E9solution": "Proposition de résolution";
            Rapport: "Rapport";
            "Rapport d'information": "Rapport d'information";
            Résolution: "Résolution";
        }>;
        provenance: z.ZodOptional<z.ZodEnum<{
            Commission: "Commission";
            Séance: "Séance";
            "Texte D\u00E9pos\u00E9": "Texte Déposé";
        }>>;
        titres: z.ZodObject<{
            titrePrincipal: z.ZodString;
            titrePrincipalCourt: z.ZodString;
        }, z.core.$strip>;
        divisions: z.ZodOptional<z.ZodArray<z.ZodType<DivisionClean, unknown, z.core.$ZodTypeInternals<DivisionClean, unknown>>>>;
        dossierRef: z.ZodString;
        classification: z.ZodObject<{
            famille: z.ZodOptional<z.ZodObject<{
                depot: z.ZodObject<{
                    code: z.ZodString;
                    libelle: z.ZodString;
                }, z.core.$strip>;
                classe: z.ZodObject<{
                    code: z.ZodString;
                    libelle: z.ZodString;
                }, z.core.$strip>;
                espece: z.ZodOptional<z.ZodObject<{
                    code: z.ZodString;
                    libelle: z.ZodString;
                }, z.core.$strip>>;
            }, z.core.$strip>>;
            type: z.ZodObject<{
                code: z.ZodString;
                libelle: z.ZodString;
            }, z.core.$strip>;
            sousType: z.ZodOptional<z.ZodObject<{
                code: z.ZodEnum<{
                    ACCPRESRP: "ACCPRESRP";
                    APPART1515: "APPART1515";
                    APPART341: "APPART341";
                    APPLOI: "APPLOI";
                    AUE: "AUE";
                    AUTRATCONV: "AUTRATCONV";
                    AVECVOTE: "AVECVOTE";
                    CENSURE492: "CENSURE492";
                    CENSURE493: "CENSURE493";
                    COMENQ: "COMENQ";
                    COMPA: "COMPA";
                    COMSPCPTE: "COMSPCPTE";
                    CONST: "CONST";
                    CTRLBUDG: "CTRLBUDG";
                    DIVERS: "DIVERS";
                    ENGRESPTXT: "ENGRESPTXT";
                    ENQU: "ENQU";
                    FIN: "FIN";
                    FINGEST: "FINGEST";
                    FINRECT: "FINRECT";
                    FINSSOC: "FINSSOC";
                    FINSSOCREC: "FINSSOCREC";
                    IMPACTLOIS: "IMPACTLOIS";
                    LEGDELEGAN: "LEGDELEGAN";
                    MINFOCOMPER: "MINFOCOMPER";
                    MODREGLTAN: "MODREGLTAN";
                    NOTEOPECST: "NOTEOPECST";
                    OFFPARL: "OFFPARL";
                    ORG: "ORG";
                    PETITION: "PETITION";
                    PRESIDAGE: "PRESIDAGE";
                    PRESIDASS: "PRESIDASS";
                    PRESIDREP: "PRESIDREP";
                    PROPACTCOM: "PROPACTCOM";
                    PRPDIT: "PRPDIT";
                    RECT: "RECT";
                    REFART11: "REFART11";
                    RGLTBUDG: "RGLTBUDG";
                    RGLTBUDG2: "RGLTBUDG2";
                    SUPP: "SUPP";
                    SUSPOURS: "SUSPOURS";
                    TVXINSTITEUROP: "TVXINSTITEUROP";
                }>;
                libelle: z.ZodOptional<z.ZodString>;
                libelleEdition: z.ZodOptional<z.ZodString>;
            }, z.core.$strip>>;
            statutAdoption: z.ZodOptional<z.ZodEnum<{
                ADOPTCOM: "ADOPTCOM";
                ADOPTSEANCE: "ADOPTSEANCE";
                REJETSEANCE: "REJETSEANCE";
            }>>;
        }, z.core.$strip>;
        auteurs: z.ZodArray<z.ZodObject<{
            acteur: z.ZodOptional<z.ZodObject<{
                acteurRef: z.ZodString;
                qualite: z.ZodEnum<{
                    auteur: "auteur";
                    cosignataire: "cosignataire";
                    rapporteur: "rapporteur";
                    "rapporteur g\u00E9n\u00E9ral": "rapporteur général";
                    "rapporteur pour avis": "rapporteur pour avis";
                    "rapporteur sp\u00E9cial": "rapporteur spécial";
                }>;
            }, z.core.$strip>>;
            organeRef: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>>;
        correction: z.ZodOptional<z.ZodObject<{
            typeCorrection: z.ZodEnum<{
                Rectifié: "Rectifié";
            }>;
            niveauCorrection: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>>;
        notice: z.ZodObject<{
            numNotice: z.ZodOptional<z.ZodString>;
            formule: z.ZodOptional<z.ZodString>;
            adoptionConforme: z.ZodBoolean;
        }, z.core.$strip>;
        indexation: z.ZodOptional<z.ZodObject<{
            themes: z.ZodObject<{
                "@niveau": z.ZodString;
                theme: z.ZodObject<{
                    libelleTheme: z.ZodString;
                }, z.core.$strip>;
            }, z.core.$strip>;
        }, z.core.$strip>>;
        imprimerie: z.ZodOptional<z.ZodObject<{
            dian: z.ZodOptional<z.ZodString>;
            isbn: z.ZodOptional<z.ZodString>;
            issn: z.ZodOptional<z.ZodString>;
            nbPage: z.ZodOptional<z.ZodString>;
            prix: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>>;
        coSignataires: z.ZodOptional<z.ZodArray<z.ZodObject<{
            acteurRef: z.ZodOptional<z.ZodString>;
            dateCosignature: z.ZodString;
            dateRetraitCosignature: z.ZodOptional<z.ZodString>;
            edite: z.ZodBoolean;
            organe: z.ZodOptional<z.ZodObject<{
                organeRef: z.ZodString;
                etApparentes: z.ZodBoolean;
            }, z.core.$strip>>;
        }, z.core.$strip>>>;
        depotAmendements: z.ZodOptional<z.ZodObject<{
            amendementsSeance: z.ZodObject<{
                amendable: z.ZodBoolean;
            }, z.core.$strip>;
            amendementsCommission: z.ZodOptional<z.ZodArray<z.ZodObject<{
                organeRef: z.ZodString;
                amendable: z.ZodBoolean;
            }, z.core.$strip>>>;
        }, z.core.$strip>>;
        organesReferents: z.ZodOptional<z.ZodArray<z.ZodString>>;
        rapportPublie: z.ZodOptional<z.ZodBoolean>;
    }, z.core.$strip>>;
    dossiersParlementaires: z.ZodArray<z.ZodObject<{
        schemaVersion: z.ZodOptional<z.ZodString>;
        xsiType: z.ZodOptional<z.ZodEnum<{
            DossierCommissionEnquete_Type: "DossierCommissionEnquete_Type";
            DossierIniativeExecutif_Type: "DossierIniativeExecutif_Type";
            DossierLegislatif_Type: "DossierLegislatif_Type";
            DossierMissionControle_Type: "DossierMissionControle_Type";
            DossierMissionInformation_Type: "DossierMissionInformation_Type";
            DossierResolutionAN: "DossierResolutionAN";
        }>>;
        uid: z.ZodString;
        legislature: z.ZodString;
        titreDossier: z.ZodObject<{
            titre: z.ZodString;
            titreChemin: z.ZodOptional<z.ZodString>;
            senatChemin: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>;
        procedureParlementaire: z.ZodObject<{
            code: z.ZodString;
            libelle: z.ZodString;
        }, z.core.$strip>;
        initiateur: z.ZodOptional<z.ZodObject<{
            acteurs: z.ZodOptional<z.ZodArray<z.ZodObject<{
                acteurRef: z.ZodString;
                mandatRef: z.ZodOptional<z.ZodString>;
            }, z.core.$strip>>>;
            organeRef: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>>;
        actesLegislatifs: z.ZodOptional<z.ZodArray<z.ZodType<ActeLegislatifClean, unknown, z.core.$ZodTypeInternals<ActeLegislatifClean, unknown>>>>;
        fusionDossier: z.ZodOptional<z.ZodObject<{
            cause: z.ZodEnum<{
                "Dossier absorb\u00E9": "Dossier absorbé";
                "Examen commun": "Examen commun";
            }>;
            dossierAbsorbantRef: z.ZodString;
        }, z.core.$strip>>;
        indexation: z.ZodOptional<z.ZodObject<{
            themes: z.ZodObject<{
                "@niveau": z.ZodString;
                theme: z.ZodObject<{
                    libelleTheme: z.ZodString;
                }, z.core.$strip>;
            }, z.core.$strip>;
        }, z.core.$strip>>;
        plf: z.ZodOptional<z.ZodArray<z.ZodObject<{
            uid: z.ZodString;
            organeRef: z.ZodString;
            texteAssocie: z.ZodOptional<z.ZodString>;
            rapporteurs: z.ZodOptional<z.ZodArray<z.ZodObject<{
                acteurRef: z.ZodString;
                typeRapporteur: z.ZodEnum<{
                    auteur: "auteur";
                    cosignataire: "cosignataire";
                    rapporteur: "rapporteur";
                    "rapporteur g\u00E9n\u00E9ral": "rapporteur général";
                    "rapporteur pour avis": "rapporteur pour avis";
                    "rapporteur sp\u00E9cial": "rapporteur spécial";
                }>;
                etudePlfRef: z.ZodOptional<z.ZodString>;
            }, z.core.$strip>>>;
            missionMinefi: z.ZodOptional<z.ZodType<MissionMinefiElementClean, unknown, z.core.$ZodTypeInternals<MissionMinefiElementClean, unknown>>>;
            ordreDiqs: z.ZodString;
            ordreCommission: z.ZodString;
        }, z.core.$strip>>>;
    }, z.core.$strip>>;
}, z.core.$strip>;
export type DossiersLegislatifsClean = z.infer<typeof DossiersLegislatifsCleanSchema>;
/**
 * Parse Document from JSON string
 */
export declare function parseDocumentClean(json: string): DocumentClean;
/**
 * Parse DossierParlementaire from JSON string
 */
export declare function parseDossierParlementaireClean(json: string): DossierParlementaireClean;
/**
 * Parse DossiersLegislatifs from JSON string
 */
export declare function parseDossiersLegislatifsClean(json: string): DossiersLegislatifsClean;
/**
 * Serialize Document to JSON string
 */
export declare function documentCleanToJson(value: DocumentClean): string;
/**
 * Serialize DossierParlementaire to JSON string
 */
export declare function dossierParlementaireCleanToJson(value: DossierParlementaireClean): string;
/**
 * Serialize DossiersLegislatifs to JSON string
 */
export declare function dossiersLegislatifsCleanToJson(value: DossiersLegislatifsClean): string;
/**
 * File-specific Convert object matching Quicktype's Convert class API
 *
 * @example
 * ```typescript
 * import { DossiersLegislatifsCleanConvert } from "@tricoteuses/assemblee/zod"
 *
 * const document = DossiersLegislatifsCleanConvert.toDocument(json)
 * const json = DossiersLegislatifsCleanConvert.documentToJson(document)
 * ```
 */
export declare const DossiersLegislatifsCleanConvert: {
    toDocument: typeof parseDocumentClean;
    documentToJson: typeof documentCleanToJson;
    toDossierParlementaire: typeof parseDossierParlementaireClean;
    dossierParlementaireToJson: typeof dossierParlementaireCleanToJson;
    toDossiersLegislatifs: typeof parseDossiersLegislatifsClean;
    dossiersLegislatifsToJson: typeof dossiersLegislatifsCleanToJson;
};
