@tricoteuses/senat
Version:
Handle French Sénat's open data
66 lines (65 loc) • 1.6 kB
TypeScript
export declare enum DivisionType {
tome = 1,
part = 2,
book = 3,
title = 4,
subtitle = 5,
chapter = 6,
section = 7,
subsection = 8,
paragraph = 9,
article = 10,
alinea = 11,
division = 12
}
export type DivisionTag = keyof typeof DivisionType;
export interface FlatTexte {
titre: string | null;
titreCourt: string | null;
signetDossier: string | null;
urlDossierSenat: string | null;
urlDossierAssemblee: string | null;
type: string | null;
session: string | null;
numero: number | null;
datePresentation: Date | null;
dateDepot: Date | null;
datePublicationXml: Date | null;
version: Version | null;
workflow: Step[];
divisions: Division[];
exposeDesMotifs?: ExposeDesMotifs | null;
}
export type Version = "RECT" | "RECT_BIS" | "RECT_TER" | "RECT_QUATER" | "RECT_QUINQUIES";
export interface Step {
eId: string;
date: Date | null;
type: string | null;
session: string | null;
numero: string | null;
version: Version | null;
outcome: string | null;
}
export interface Division {
index: number;
eId: string;
tag: DivisionTag;
level: number;
headings: DivisionContent[];
}
export interface Article extends Division {
alineas: Alinea[];
}
export interface DivisionContent {
text: string | null;
html?: string | null;
}
export interface Alinea extends DivisionContent {
eId: string;
heading: DivisionContent;
pastille: string | null;
}
export interface ExposeDesMotifs {
text: string | null;
html: string | null;
}