declare namespace Model { interface LoginRequestBody { username: string; password: string; } interface LoginResponse { token?: string; } interface GPSResonse { lat: number; lon: number; s: number; h: number; fishing: boolean; } interface Alarm { name: string; t: number; // timestamp (epoch seconds) level: number; id: string; } interface AlarmResponse { alarms: Alarm[]; level: number; } interface ShipTrackPoint { time: number; lon: number; lat: number; s: number; h: number; } interface EntityResponse { id: string; v: number; vs: string; t: number; type: string; } interface TransformedEntity { id: string; value: number; valueString: string; time: number; type: string; } // Banzones // Banzone export interface Zone { id?: string; name?: string; type?: number; conditions?: Condition[]; enabled?: boolean; updated_at?: Date; geom?: Geom; } export interface Condition { max?: number; min?: number; type?: Type; to?: number; from?: number; } export enum Type { LengthLimit = "length_limit", MonthRange = "month_range", } export interface Geom { geom_type?: number; geom_poly?: string; geom_lines?: string; geom_point?: string; geom_radius?: number; } }