@tricoteuses/assemblee
Version:
Retrieve, clean up & handle French Assemblée nationale's open data
188 lines (187 loc) • 5.72 kB
TypeScript
export interface Scrutins {
scrutins: ScrutinsClass;
}
export interface ScrutinsClass {
scrutin: Scrutin[];
}
export interface ScrutinWrapper {
scrutin: Scrutin;
}
export interface Scrutin {
"@xmlns:xsi": string;
uid: string;
numero: string;
organeRef: string;
legislature: string;
sessionRef: string;
seanceRef: string;
dateScrutin: Date;
quantiemeJourSeance: string;
typeVote: TypeVote;
sort: Sort;
titre: string;
demandeur: Demandeur;
objet: Objet;
modePublicationDesVotes: ModePublicationDesVotes;
syntheseVote: SyntheseVote;
ventilationVotes: VentilationVotes;
miseAuPoint: MiseAuPoint | null;
lieuVote?: LieuVote;
"@xmlns"?: string;
}
export interface Demandeur {
texte: null | string;
referenceLegislative: null;
}
export interface MiseAuPoint {
nonVotants: Array<VotantsClass | null> | null;
pour?: VotantsClass | null;
contre?: VotantsClass | null;
abstentions: Array<VotantsClass | null> | VotantsClass | null;
nonVotantsVolontaires: Array<VotantsClass | null> | VotantsClass | null;
pours?: VotantsClass | null;
contres?: VotantsClass | null;
dysfonctionnement?: Dysfonctionnement;
}
export interface Dysfonctionnement {
nonVotants: VotantsClass | null;
pour: VotantsClass | null;
contre: VotantsClass | null;
abstentions: VotantsClass | null;
nonVotantsVolontaires: VotantsClass | null;
}
export declare enum ModePublicationDesVotes {
DecompteDissidentsPositionGroupe = "DecompteDissidentsPositionGroupe",
DecompteNominatif = "DecompteNominatif"
}
export interface Objet {
libelle: string;
referenceLegislative: null;
dossierLegislatif?: null;
}
export interface Sort {
code: Code;
libelle: Libelle;
}
export declare enum Code {
Adopté = "adopt\u00E9",
Rejeté = "rejet\u00E9"
}
export declare enum Libelle {
LAssembléeNationaleAAdopté = "l'Assembl\u00E9e nationale a adopt\u00E9",
LAssembléeNationaleNAPasAdopté = "L'Assembl\u00E9e nationale n'a pas adopt\u00E9",
LeCongrèsDuParlementAAdopté = "Le Congr\u00E8s du Parlement a adopt\u00E9",
LeCongrèsDuParlementNAPasAdopté = "Le Congr\u00E8s du Parlement n'a pas adopt\u00E9"
}
export interface SyntheseVote {
nombreVotants: string;
suffragesExprimes: string;
nbrSuffragesRequis: string;
annonce: Libelle;
decompte: Decompte;
}
export interface Decompte {
pour: string;
contre: string;
abstentions: string;
nonVotants: string;
nonVotantsVolontaires?: string;
}
export interface TypeVote {
codeTypeVote: CodeTypeVote;
libelleTypeVote: LibelleTypeVote;
typeMajorite: TypeMajorite;
}
export declare enum CodeTypeVote {
Moc = "MOC",
Sat = "SAT",
Spo = "SPO",
Sps = "SPS",
Ssg = "SSG"
}
export declare enum LibelleTypeVote {
MotionDeCensure = "motion de censure",
ScrutinPublicOrdinaire = "scrutin public ordinaire",
ScrutinPublicSolennel = "scrutin public solennel",
ScrutinÀLaTribune = "scrutin \u00E0 la tribune",
ScrutinSolennelCongrès = "Scrutin solennel congr\u00E8s"
}
export declare enum TypeMajorite {
MajoritéAbsolueDesSuffragesExprimés = "Majorit\u00E9 absolue des suffrages exprim\u00E9s",
majoritéAbsolueDesSuffragesExprimés = "majorit\u00E9 absolue des suffrages exprim\u00E9s",
majoritéDesMembresComposantLAssembléeNationale = "majorit\u00E9 des membres composant l'Assembl\u00E9e nationale",
majoritéDesMembresComposantsComposantLAssemblée = "majorit\u00E9 des membres composants composant l'Assembl\u00E9e",
majoritéDesMembresComposantsComposantLAssembléeNationale = "majorit\u00E9 des membres composants composant l'Assembl\u00E9e nationale",
MajoritéRequisePourUnCongrès = "Majorit\u00E9 requise pour un Congr\u00E8s",
MajoritéRequisePourUneMotionDeCensure = "Majorit\u00E9 requise pour une motion de censure"
}
export interface VentilationVotes {
organe: Organe;
}
export interface Organe {
organeRef: string;
groupes: Groupes;
}
export interface Groupes {
groupe: Groupe[];
}
export interface Groupe {
organeRef: string;
nombreMembresGroupe: string;
vote: Vote;
}
export interface Vote {
positionMajoritaire: PositionMajoritaire;
decompteVoix: DecompteVoix;
decompteNominatif: DecompteNominatif;
}
export interface DecompteNominatif {
nonVotant?: null;
nonVotants?: VotantsClass | null | string;
pour?: VotantsClass | null;
contre?: VotantsClass | null;
abstention?: VotantsClass | null;
abstentions?: VotantsClass | null;
pours?: VotantsClass | null;
contres?: VotantsClass | null;
}
export interface VotantsClass {
votant: Votant[] | Votant;
}
export interface Votant {
acteurRef: string;
mandatRef: string;
parDelegation?: string;
numPlace?: string | null;
causePositionVote?: CausePositionVote;
}
export declare enum CausePositionVote {
Mg = "MG",
Pan = "PAN",
Pse = "PSE"
}
export interface DecompteVoix {
pour: string;
contre: string;
abstention?: string;
nonVotant?: string | null;
nonVotants?: string;
abstentions?: string;
nonVotantsVolontaires?: string;
}
export declare enum PositionMajoritaire {
Abstention = "abstention",
Contre = "contre",
Pour = "pour"
}
export declare enum LieuVote {
Congrès = "Congr\u00E8s",
Hémicycle = "H\u00E9micycle",
Salons = "Salons"
}
export declare class Convert {
static toScrutins(json: string): Scrutins;
static scrutinsToJson(value: Scrutins): string;
static toScrutinWrapper(json: string): ScrutinWrapper;
static scrutinWrapperToJson(value: ScrutinWrapper): string;
}