-
Saket Agrahari authoredSaket Agrahari authored
Schema.tsx 4.50 KiB
export interface Nren {
name: string,
country: string
}
export interface FilterSelection {
selectedNrens: string[]
selectedYears: number[]
}
export interface NrenAndYearDatapoint {
nren: string,
nren_country: string,
year: number
}
export interface Budget extends NrenAndYearDatapoint {
budget: number
}
export interface TrafficVolume extends NrenAndYearDatapoint {
from_customers: number,
to_customers: number,
from_external: number,
to_external: number
}
export interface FundingSource extends NrenAndYearDatapoint {
client_institutions: number,
commercial: number,
european_funding: number,
gov_public_bodies: number,
other: number
}
export interface ChargingStructure extends NrenAndYearDatapoint {
fee_type: (string | null)
}
export interface FibreLight extends NrenAndYearDatapoint {
light_description: (string | null)
}
export interface PertTeam extends NrenAndYearDatapoint {
pert_team: (string | null)
}
export interface MonitoringTools extends NrenAndYearDatapoint {
tool_descriptions: (string | null)[],
netflow_processing_description: (string | null)
}
export interface NrenStaff extends NrenAndYearDatapoint {
permanent_fte: number,
subcontracted_fte: number,
technical_fte: number,
non_technical_fte: number
}
export interface Organisation extends NrenAndYearDatapoint {
name: string,
role?: string
}
export interface ECProject extends NrenAndYearDatapoint {
project: string
}
export interface Policy extends NrenAndYearDatapoint {
acceptable_use: string,
connectivity: string,
data_protection: string,
environmental: string,
equal_opportunity: string,
privacy_notice: string,
strategic_plan: string
}
export interface ConnectedInstitutionURLs extends NrenAndYearDatapoint {
urls: string[]
}
export interface BasicDataset {
labels: string[];
datasets: {
backgroundColor: string;
borderColor?: string;
data: (number | null)[];
label: string;
hidden: boolean;
}[];
}
export interface FundingSourceDataset {
labels: string[],
datasets: {
label: string,
data: number[],
backgroundColor: string
borderSkipped: boolean,
barPercentage: number,
borderWidth: number,
categoryPercentage: number
stack: string
hidden: boolean
}[]
}
export interface NrenStaffDataset {
labels: string[],
datasets: {
label: string,
data: number[],
backgroundColor: string| string[],
borderRadius: number,
borderSkipped: boolean,
barPercentage: number,
borderWidth: number,
categoryPercentage: number
stack: string
hidden: boolean
}[]
}
export enum ServiceCategory {
network_services = "network_services",
isp_support = "isp_support",
security = "security",
identity = "identity",
collaboration = "collaboration",
multimedia = "multimedia",
storage_and_hosting = "storage_and_hosting",
professional_services = "professional_services",
}
export interface Service extends NrenAndYearDatapoint {
service_category: ServiceCategory,
service_name: string,
service_description: string,
product_name: string,
official_description: string,
additional_information: string,
}
export enum ConnectivityCategory {
ConnectedProportion="proportion",
ConnectivityLevel="level",
ConnectionCarrier="carrier",
ConnectivityLoad="load",
ConnectivityGrowth="growth",
CommercialConnectivity="commercial",
CommercialChargingLevel="charging",
}
export interface ConnectedProportion extends NrenAndYearDatapoint {
// strategic_plan: string,
user_category: string,
coverage: string,
number_connected: number,
market_share: number,
users_served: number,
}
export interface ConnectivityLevel extends NrenAndYearDatapoint {
user_category: string
typical_speed: number,
highest_speed: number,
highest_speed_proportion: number,
}
export interface ConnectionCarrier extends NrenAndYearDatapoint {
user_category: string,
carry_mechanism: string
}
export interface ConnectivityLoad extends NrenAndYearDatapoint {
user_category: string,
average_load_from_institutions: number,
average_load_to_institutions: number,
peak_load_from_institutions: number,
peak_load_to_institutions: number
}
export interface ConnectivityGrowth extends NrenAndYearDatapoint {
user_category: string,
growth: number
}