UNPKG

@tmlmobilidade/interfaces

Version:

This package provides SDK-style connectors for interacting with databases (e.g., stops, plans, rides, alerts) and external providers (e.g., authentication, storage). It simplifies data access and integration across projects.

81 lines (80 loc) 3.91 kB
import { MongoCollectionClass } from '../../common/mongo-collection.js'; import { type Agency, type CreateAgencyDto, type UpdateAgencyDto } from '@tmlmobilidade/types'; import { IndexDescription } from 'mongodb'; import { z } from 'zod'; declare class AgenciesClass extends MongoCollectionClass<Agency, CreateAgencyDto, UpdateAgencyDto> { private static _instance; protected createSchema: z.ZodSchema; protected updateSchema: z.ZodSchema; private constructor(); static getInstance(): Promise<AgenciesClass>; findByCode(code: string): Promise<import("mongodb").WithId<{ _id: string; created_at: number & { __brand: "UnixTimestamp"; }; created_by: string | null; is_locked: boolean; updated_at: number & { __brand: "UnixTimestamp"; }; code: string; name: string; alerts_map: Partial<Record<"ACCIDENT" | "CONSTRUCTION" | "DEMONSTRATION" | "MEDICAL_EMERGENCY" | "POLICE_ACTIVITY" | "STRIKE" | "TECHNICAL_ISSUE" | "WEATHER" | "ABUSIVE_PARKING" | "DRIVER_ABSENCE" | "DRIVER_ISSUE" | "HIGH_PASSENGER_LOAD" | "NETWORK_UPDATE" | "ROAD_ISSUE" | "TRAFFIC_JAM" | "PUBLIC_DISORDER" | "VEHICLE_ISSUE", Partial<Record<"ACCESSIBILITY_ISSUE" | "ADDITIONAL_SERVICE" | "DETOUR" | "MODIFIED_SERVICE" | "NO_SERVICE" | "REDUCED_SERVICE" | "SIGNIFICANT_DELAYS" | "STOP_MOVED" | "REALTIME_INFO_ISSUE" | "ON_BOARD_SALE_ISSUE", Partial<Record<"agency" | "lines" | "stops" | "rides", boolean>>>>>>; contact_emails_pta: string[]; contact_emails_pto: string[]; fare_url: string; financials: { price_per_km: number; vkm_per_month: number[]; }; operation_start_date: import("@tmlmobilidade/types").OperationalDate | null; phone: string; public_email: string; public_name: string; short_name: string; timezone: string; website_url: string; updated_by?: string | undefined; validation_rules?: any; }>>; updateByCode(code: string, fields: Partial<Agency>): Promise<import("mongodb").UpdateResult<{ _id: string; created_at: number & { __brand: "UnixTimestamp"; }; created_by: string | null; is_locked: boolean; updated_at: number & { __brand: "UnixTimestamp"; }; code: string; name: string; alerts_map: Partial<Record<"ACCIDENT" | "CONSTRUCTION" | "DEMONSTRATION" | "MEDICAL_EMERGENCY" | "POLICE_ACTIVITY" | "STRIKE" | "TECHNICAL_ISSUE" | "WEATHER" | "ABUSIVE_PARKING" | "DRIVER_ABSENCE" | "DRIVER_ISSUE" | "HIGH_PASSENGER_LOAD" | "NETWORK_UPDATE" | "ROAD_ISSUE" | "TRAFFIC_JAM" | "PUBLIC_DISORDER" | "VEHICLE_ISSUE", Partial<Record<"ACCESSIBILITY_ISSUE" | "ADDITIONAL_SERVICE" | "DETOUR" | "MODIFIED_SERVICE" | "NO_SERVICE" | "REDUCED_SERVICE" | "SIGNIFICANT_DELAYS" | "STOP_MOVED" | "REALTIME_INFO_ISSUE" | "ON_BOARD_SALE_ISSUE", Partial<Record<"agency" | "lines" | "stops" | "rides", boolean>>>>>>; contact_emails_pta: string[]; contact_emails_pto: string[]; fare_url: string; financials: { price_per_km: number; vkm_per_month: number[]; }; operation_start_date: import("@tmlmobilidade/types").OperationalDate | null; phone: string; public_email: string; public_name: string; short_name: string; timezone: string; website_url: string; updated_by?: string | undefined; validation_rules?: any; }>>; protected getCollectionIndexes(): IndexDescription[]; protected getCollectionName(): string; protected getEnvName(): string; } /** * @deprecated This class is deprecated and will be removed in the future. * Use `@tmlmobilidade/go-interfaces-go-db` instead. */ export declare const agencies: AgenciesClass; export {};