UNPKG

@tricoteuses/assemblee

Version:

Retrieve, clean up & handle French Assemblée nationale's open data

568 lines (567 loc) 16.7 kB
import { CodeActe } from '../shared_types/dossiers_legislatifs'; export interface Document { document: DocumentDocument | DocumentSupprime; } export interface DocumentDocument { "@xmlns": string; "@xmlns:xsi": string; "@xsi:type": DocumentXsiType; uid: string; legislature: null | string; cycleDeVie: CycleDeVie; denominationStructurelle: DocumentDenominationStructurelle; provenance?: Provenance; titres: Titres; divisions: Divisions | null; dossierRef: string; redacteur: null; classification: Classification; auteurs: Auteurs; correction: Correction | null; notice: Notice; indexation: Indexation | null; imprimerie: Imprimerie | null; coSignataires?: CoSignataires | null; depotAmendements?: DepotAmendements | null; organesReferents?: OrganesReferents | null; rapportPublie?: string; } export interface DocumentSupprime { "@xmlns": string; "@xmlns:xsi": string; "@xsi:type": DocumentXsiType; uid: string; metadatas: DocumentSupprimeMetadata; } export interface DocumentSupprimeMetadata { dateSuppression: Date; } export declare enum DocumentXsiType { AccordInternationalType = "accordInternational_Type", AvisConseilEtatType = "avisConseilEtat_Type", DocumentEtudeImpactType = "documentEtudeImpact_Type", RapportParlementaireType = "rapportParlementaire_Type", TexteLoiType = "texteLoi_Type" } export interface Auteurs { auteur: AuteurElement[] | AuteurElement; } export interface AuteurElement { acteur?: AuteurActeur; organe?: AuteurOrgane; } export interface AuteurActeur { acteurRef: string; qualite: Qualite; } export declare enum Qualite { Auteur = "auteur", Cosignataire = "cosignataire", Rapporteur = "rapporteur", RapporteurGénéral = "rapporteur g\u00E9n\u00E9ral", RapporteurPourAvis = "rapporteur pour avis", RapporteurSpécial = "rapporteur sp\u00E9cial" } export interface AuteurOrgane { organeRef: string; } export interface Classification { famille: Famille | null; type: ProcedureParlementaire; sousType: SousType | null; statutAdoption: StatutAdoption | null; } export interface Famille { depot: ProcedureParlementaire; classe: ProcedureParlementaire; espece?: ProcedureParlementaire; } export interface ProcedureParlementaire { code: string; libelle: string; } export interface SousType { code: Code; libelle?: string; libelleEdition?: string; } export declare enum Code { 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" } export declare enum StatutAdoption { Adoptcom = "ADOPTCOM", Adoptseance = "ADOPTSEANCE", Rejetseance = "REJETSEANCE" } export interface CoSignataires { coSignataire: CoSignataireElement[] | CoSignataireElement; } export interface CoSignataireElement { acteur?: CoSignataireActeur; dateCosignature: string; dateRetraitCosignature: null | string; edite: string; organe?: CoSignataireOrgane; } export interface CoSignataireActeur { acteurRef: string; } export interface InitiateursRefs { acteurRef?: string; organeRef?: string; } export interface CoSignataireOrgane { organeRef: string; etApparentes: string; } export interface Correction { typeCorrection: TypeCorrection; niveauCorrection?: string; } export declare enum TypeCorrection { Rectifié = "Rectifi\u00E9" } export interface CycleDeVie { chrono: Chrono; } export interface Chrono { dateCreation: Date; dateDepot: Date | null; datePublication: Date | null; datePublicationWeb: Date | null; } export declare enum DocumentDenominationStructurelle { Allocution = "Allocution", Avis = "Avis", Déclaration = "D\u00E9claration", Lettre = "Lettre", Message = "Message", Motion = "Motion", ProjetDeLoi = "Projet de loi", PropositionDeLoi = "Proposition de loi", PropositionDeRésolution = "Proposition de r\u00E9solution", Rapport = "Rapport", RapportDInformation = "Rapport d'information", Résolution = "R\u00E9solution" } export interface DepotAmendements { amendementsSeance: AmendementsSeance; amendementsCommission?: AmendementsCommission; } export interface AmendementsCommission { commission: CommissionElement[] | CommissionElement; } export interface CommissionElement { organeRef: string; amendable: string; dateLimiteDepot: null; } export interface AmendementsSeance { amendable: string; dateLimiteDepot: null; } export interface Divisions { division: Division[] | Division; } export interface Division { "@xsi:type": DocumentXsiType; uid: string; legislature: null | string; cycleDeVie: CycleDeVie; denominationStructurelle: string; titres: Titres; divisions: Divisions | null; dossierRef: string; redacteur: null; classification: Classification; auteurs: Auteurs; organesReferents?: OrganesReferents | null; correction: Correction | null; notice: Notice; indexation: Indexation | null; imprimerie: Imprimerie | null; coSignataires?: null; depotAmendements?: null; rapportPublie?: string; } export interface Imprimerie { DIAN?: null | string; ISBN?: null | string; ISSN?: null | string; nbPage?: null | string; prix: null | string; } export interface Notice { numNotice?: string; formule?: string; adoptionConforme: string; } export interface Titres { titrePrincipal: string; titrePrincipalCourt: string; } export interface OrganesReferents { organeRef: string[] | string; } export declare enum Provenance { Commission = "Commission", Séance = "S\u00E9ance", TexteDéposé = "Texte D\u00E9pos\u00E9" } export interface DossierParlementaire { dossierParlementaire: DossierParlementaireDossierParlementaire; } export interface DossierParlementaireDossierParlementaire { "@xmlns": string; "@xmlns:xsi": string; "@xsi:type": DossierParlementaireXsiType; uid: string; legislature: string; titreDossier: TitreDossier; procedureParlementaire: ProcedureParlementaire; initiateur: Initiateur | null; actesLegislatifs: ActesLegislatifs | null; indexation?: Indexation; fusionDossier: FusionDossier | null; PLF?: Plf; } export declare enum DossierParlementaireXsiType { DossierCommissionEnqueteType = "DossierCommissionEnquete_Type", DossierIniativeExecutifType = "DossierIniativeExecutif_Type", DossierLegislatifType = "DossierLegislatif_Type", DossierMissionControleType = "DossierMissionControle_Type", DossierMissionInformationType = "DossierMissionInformation_Type", DossierResolutionAn = "DossierResolutionAN" } export interface Plf { EtudePLF: EtudePlf[]; } export interface EtudePlf { uid: string; organeRef: string; texteAssocie?: string; rapporteur?: Rapporteur[] | Rapporteur; missionMinefi?: MissionMinefiElement; ordreDIQS: string; ordreCommission: string; } export interface Missions { mission: MissionMinefiElement[] | MissionMinefiElement; } export interface MissionMinefiElement { typeMission: TypeMission; codeMission?: string; libelleLong: string; libelleCourt: string; typeBudget: TypeBudget; missions?: Missions; } export declare enum TypeBudget { BudgetAnnexe = "Budget annexe", BudgetGénéral = "Budget g\u00E9n\u00E9ral", CompteDeConcoursFinancier = "Compte de concours financier", CompteSpécial = "Compte sp\u00E9cial", PremièrePartie = "Premi\u00E8re partie" } export declare enum TypeMission { MissionPrincipale = "mission principale", MissionSecondaire = "mission secondaire", PartieDeMission = "partie de mission" } export interface ActesLegislatifs { acteLegislatif: ActeLegislatif[] | ActeLegislatif; } export interface ActeLegislatif { "@xsi:type": ActeLegislatifXsiType; uid: string; codeActe: CodeActe; libelleActe: LibelleActe; organeRef?: string; dateActe: Date | null; actesLegislatifs: ActesLegislatifs | null; texteAssocie?: string; contributionInternaute?: ContributionInternaute; provenance?: string; depotInitialLectureDefinitiveRef?: null | string; initiateur?: Initiateur; statutConclusion?: FamCodeEtLibelle; reunionRef?: string | null; odjRef?: string | null; odSeancejRef?: null; voteRefs?: VoteRefs | null; textesAssocies?: TextesAssocies; rapporteurs?: Rapporteurs; reunion?: null; texteAdopte?: null | string; casSaisine?: FamCodeEtLibelle; decision?: FamCodeEtLibelle; formuleDecision?: string; initiateurs?: InitiateursRefs | null; motif?: Motif; urlConclusion?: string; numDecision?: string; anneeDecision?: string; typeDeclaration?: FamCodeEtLibelle; typeMotionCensure?: FamCodeEtLibelle; auteurs?: ActeLegislatifAuteurs | null; typeMotion?: FamCodeEtLibelle; auteurMotion?: string; dateRetrait?: null; texteLoiRef?: string; infoJO?: InfoJoElement | null; urlEcheancierLoi?: null | string; codeLoi?: string; titreLoi?: string | null; infoJORect?: InfoJoElement[] | InfoJoElement; texteEuropeen?: TexteEuropeen; infoJOCE?: InfoJoce; statutAdoption?: FamCodeEtLibelle; urlLegifrance?: string; referenceNOR?: string; texteExterneAssocie?: TexteExterneAssocie; } export declare enum ActeLegislatifXsiType { AdoptionEuropeType = "Adoption_Europe_Type", ConclusionEtapeCcType = "ConclusionEtapeCC_Type", ConvocationCongresType = "ConvocationCongres_Type", CreationOrganeTemporaireType = "CreationOrganeTemporaire_Type", DecisionMotionCensureType = "DecisionMotionCensure_Type", DecisionRecevabiliteBureauType = "DecisionRecevabiliteBureau_Type", DecisionType = "Decision_Type", DeclarationGouvernementType = "DeclarationGouvernement_Type", DepotAccordInternationalType = "DepotAccordInternational_Type", DepotAvisConseilEtatType = "DepotAvisConseilEtat_Type", DepotInitiativeNavetteType = "DepotInitiativeNavette_Type", DepotInitiativeType = "DepotInitiative_Type", DepotLettreRectificativeType = "DepotLettreRectificative_Type", DepotMotionCensureType = "DepotMotionCensure_Type", DepotMotionReferendaireType = "DepotMotionReferendaire_Type", DepotRapportType = "DepotRapport_Type", DiscussionCommissionType = "DiscussionCommission_Type", DiscussionSeancePubliqueType = "DiscussionSeancePublique_Type", EtapeType = "Etape_Type", EtudeImpactType = "EtudeImpact_Type", MotionProcedureType = "MotionProcedure_Type", NominRapporteursType = "NominRapporteurs_Type", ProcedureAccelereType = "ProcedureAccelere_Type", PromulgationType = "Promulgation_Type", RenvoiPrealableType = "RenvoiPrealable_Type", RenvoiCmpType = "RenvoiCMP_Type", RetraitInitiativeType = "RetraitInitiative_Type", SaisieComAvisType = "SaisieComAvis_Type", SaisieComFondType = "SaisieComFond_Type", SaisineConseilConstitType = "SaisineConseilConstit_Type" } export interface LibelleActe { nomCanonique: string; libelleCourt?: string; } export interface Rapporteur { acteurRef: string; typeRapporteur: Qualite; etudePLFRef?: string; } export interface Rapporteurs { rapporteur: Rapporteur[] | Rapporteur; } export interface FamCodeEtLibelle { fam_code: string; libelle?: string; } export interface Rapporteurs { rapporteur: Rapporteur[] | Rapporteur; } export interface TextesAssocies { texteAssocie: TexteAssocieElement[] | TexteAssocieElement; } export interface TexteAssocieElement { typeTexte: TypeTexte; refTexteAssocie: string; } export declare enum TypeTexte { Bta = "BTA", Tap = "TAP" } export interface VoteRefs { voteRef: string[] | string; } export interface ActeLegislatifAuteurs { acteurRef: string[] | string; } export interface ContributionInternaute { dateFermeture: null | string; dateOuverture?: string; } export interface ActeurElement { acteurRef: string; mandatRef: string; } export declare enum Motif { EnApplicationDeLArticle612DeLaConstitution = "En application de l'article 61\u00A72 de la Constitution" } export interface InfoJoElement { typeJO: TypeJo; dateJO: string; pageJO: null; numJO: string; urlLegifrance?: string; referenceNOR?: string; } export declare enum TypeJo { JoLoiDecret = "JO_LOI_DECRET" } export interface FusionDossier { cause: Cause; dossierAbsorbantRef: string; } export declare enum Cause { DossierAbsorbé = "Dossier absorb\u00E9", ExamenCommun = "Examen commun" } export interface Initiateur { acteurs?: InitiateurActeurs; organes?: Organes; } export interface InitiateurActeurs { acteur: ActeurElement[] | ActeurElement; } export interface Organes { organe: OrganesOrgane; } export interface OrganesOrgane { organeRef: OrganeRefClass; } export interface OrganeRefClass { uid: string; } export interface TitreDossier { titre: string; titreChemin: null | string; senatChemin: null | string; } export interface DossiersLegislatifs { export: Export; } export interface Export { "@xmlns:xsi": string; textesLegislatifs: TextesLegislatifs; dossiersLegislatifs: DossiersLegislatifsClass; } export interface DossiersLegislatifsClass { dossier: Dossier[]; } export interface Dossier { dossierParlementaire: DossierDossierParlementaire; } export interface DossierDossierParlementaire { "@xsi:type"?: DossierParlementaireXsiType; uid: string; legislature: string; titreDossier: TitreDossier; procedureParlementaire: ProcedureParlementaire; initiateur: Initiateur | null; actesLegislatifs: ActesLegislatifs; indexation?: Indexation; fusionDossier: FusionDossier | null; PLF?: Plf; } export interface InfoJoce { refJOCE: string; dateJOCE: string; } export interface TexteEuropeen { typeTexteEuropeen: string; titreTexteEuropeen: string; } export interface Indexation { themes: Themes; } export interface Themes { "@niveau": string; theme: Theme; } export interface Theme { libelleTheme: string; } export interface TextesLegislatifs { document: DocumentElement[]; } export interface DocumentElement { "@xsi:type": DocumentXsiType; uid: string; legislature: null | string; cycleDeVie: CycleDeVie; denominationStructurelle: DocumentDenominationStructurelle; provenance?: Provenance; titres: Titres; divisions: Divisions | null; dossierRef: string; redacteur: null; classification: Classification; auteurs: Auteurs; correction: Correction | null; notice: Notice; indexation: Indexation | null; imprimerie: Imprimerie | null; coSignataires?: CoSignataires | null; depotAmendements?: DepotAmendements | null; rapportPublie?: string; } export interface TexteExterneAssocie { typeDoc: TexteExterneAssocieTypeDoc; texteRef: string; titreDoc: string; urlDoc: string; } export declare enum TexteExterneAssocieTypeDoc { Decret = "D\u00E9cret" } export declare class Convert { static toDocument(json: string): Document; static documentToJson(value: Document): string; static toDossierParlementaire(json: string): DossierParlementaire; static dossierParlementaireToJson(value: DossierParlementaire): string; static toDossiersLegislatifs(json: string): DossiersLegislatifs; static dossiersLegislatifsToJson(value: DossiersLegislatifs): string; }