/**
 * API Constants - SSOT (Single Source of Truth)
 *
 * Todas las rutas de API, versiones y endpoints.
 * NO hardcodear rutas en controllers o frontend.
 *
 * @module @shared/constants/api
 */
/**
 * API Version
 */
export declare const API_VERSION = "v1";
export declare const API_PREFIX = "/api/v1";
/**
 * API Routes organized by Module
 */
export declare const API_ROUTES: {
    readonly ROOT: "/";
    readonly HEALTH: "/health";
    readonly DOCS: "/api/v1/docs";
    readonly AUTH: {
        readonly BASE: "/api/v1/auth";
        readonly LOGIN: "/api/v1/auth/login";
        readonly LOGOUT: "/api/v1/auth/logout";
        readonly REFRESH: "/api/v1/auth/refresh";
        readonly REGISTER: "/api/v1/auth/register";
        readonly FORGOT_PASSWORD: "/api/v1/auth/forgot-password";
        readonly RESET_PASSWORD: "/api/v1/auth/reset-password";
        readonly ME: "/api/v1/auth/me";
        readonly CHANGE_PASSWORD: "/api/v1/auth/change-password";
    };
    readonly USERS: {
        readonly BASE: "/api/v1/users";
        readonly BY_ID: (id: string) => string;
        readonly ROLES: (id: string) => string;
    };
    readonly TENANTS: {
        readonly BASE: "/api/v1/tenants";
        readonly BY_ID: (id: string) => string;
        readonly CURRENT: "/api/v1/tenants/current";
    };
    readonly PROYECTOS: {
        readonly BASE: "/api/v1/proyectos";
        readonly BY_ID: (id: string) => string;
        readonly FRACCIONAMIENTOS: (id: string) => string;
        readonly DASHBOARD: (id: string) => string;
        readonly PROGRESS: (id: string) => string;
    };
    readonly FRACCIONAMIENTOS: {
        readonly BASE: "/api/v1/fraccionamientos";
        readonly BY_ID: (id: string) => string;
        readonly ETAPAS: (id: string) => string;
        readonly MANZANAS: (id: string) => string;
        readonly LOTES: (id: string) => string;
    };
    readonly PRESUPUESTOS: {
        readonly BASE: "/api/v1/presupuestos";
        readonly BY_ID: (id: string) => string;
        readonly PARTIDAS: (id: string) => string;
        readonly COMPARE: (id: string) => string;
        readonly VERSIONS: (id: string) => string;
    };
    readonly AVANCES: {
        readonly BASE: "/api/v1/avances";
        readonly BY_ID: (id: string) => string;
        readonly BY_PROYECTO: (proyectoId: string) => string;
        readonly CURVA_S: (proyectoId: string) => string;
        readonly FOTOS: (id: string) => string;
    };
    readonly EMPLOYEES: {
        readonly BASE: "/api/v1/employees";
        readonly BY_ID: (id: string) => string;
        readonly ASISTENCIAS: (id: string) => string;
        readonly CAPACITACIONES: (id: string) => string;
    };
    readonly ASISTENCIAS: {
        readonly BASE: "/api/v1/asistencias";
        readonly BY_ID: (id: string) => string;
        readonly CHECK_IN: "/api/v1/asistencias/check-in";
        readonly CHECK_OUT: "/api/v1/asistencias/check-out";
        readonly BY_PROYECTO: (proyectoId: string) => string;
    };
    readonly CUADRILLAS: {
        readonly BASE: "/api/v1/cuadrillas";
        readonly BY_ID: (id: string) => string;
        readonly MIEMBROS: (id: string) => string;
    };
    readonly INCIDENTES: {
        readonly BASE: "/api/v1/incidentes";
        readonly BY_ID: (id: string) => string;
        readonly INVOLUCRADOS: (id: string) => string;
        readonly ACCIONES: (id: string) => string;
        readonly BY_PROYECTO: (proyectoId: string) => string;
    };
    readonly CAPACITACIONES: {
        readonly BASE: "/api/v1/capacitaciones";
        readonly BY_ID: (id: string) => string;
        readonly PARTICIPANTES: (id: string) => string;
        readonly CERTIFICADOS: (id: string) => string;
    };
    readonly INSPECCIONES: {
        readonly BASE: "/api/v1/inspecciones";
        readonly BY_ID: (id: string) => string;
        readonly HALLAZGOS: (id: string) => string;
    };
    readonly EPP: {
        readonly BASE: "/api/v1/epp";
        readonly BY_ID: (id: string) => string;
        readonly ASIGNACIONES: "/api/v1/epp/asignaciones";
        readonly ENTREGAS: "/api/v1/epp/entregas";
        readonly STOCK: "/api/v1/epp/stock";
    };
    readonly ESTIMACIONES: {
        readonly BASE: "/api/v1/estimaciones";
        readonly BY_ID: (id: string) => string;
        readonly CONCEPTOS: (id: string) => string;
        readonly GENERADORES: (id: string) => string;
        readonly WORKFLOW: (id: string) => string;
        readonly SUBMIT: (id: string) => string;
        readonly APPROVE: (id: string) => string;
        readonly REJECT: (id: string) => string;
    };
    readonly INFONAVIT: {
        readonly BASE: "/api/v1/infonavit";
        readonly REGISTRO: "/api/v1/infonavit/registro";
        readonly OFERTA: "/api/v1/infonavit/oferta";
        readonly DERECHOHABIENTES: "/api/v1/infonavit/derechohabientes";
        readonly ASIGNACIONES: "/api/v1/infonavit/asignaciones";
        readonly ACTAS: "/api/v1/infonavit/actas";
        readonly REPORTES: "/api/v1/infonavit/reportes";
    };
    readonly ALMACENES: {
        readonly BASE: "/api/v1/almacenes";
        readonly BY_ID: (id: string) => string;
        readonly BY_PROYECTO: (proyectoId: string) => string;
        readonly STOCK: (id: string) => string;
    };
    readonly REQUISICIONES: {
        readonly BASE: "/api/v1/requisiciones";
        readonly BY_ID: (id: string) => string;
        readonly LINEAS: (id: string) => string;
        readonly SUBMIT: (id: string) => string;
        readonly APPROVE: (id: string) => string;
    };
    readonly COMPRAS: {
        readonly BASE: "/api/v1/compras";
        readonly BY_ID: (id: string) => string;
        readonly LINEAS: (id: string) => string;
        readonly COMPARATIVO: "/api/v1/compras/comparativo";
        readonly RECEPCIONES: (id: string) => string;
    };
    readonly PROVEEDORES: {
        readonly BASE: "/api/v1/proveedores";
        readonly BY_ID: (id: string) => string;
        readonly COTIZACIONES: (id: string) => string;
    };
    readonly CONTRATOS: {
        readonly BASE: "/api/v1/contratos";
        readonly BY_ID: (id: string) => string;
        readonly PARTIDAS: (id: string) => string;
        readonly ESTIMACIONES: (id: string) => string;
    };
    readonly REPORTS: {
        readonly BASE: "/api/v1/reports";
        readonly DASHBOARD: "/api/v1/reports/dashboard";
        readonly AVANCE_FISICO: "/api/v1/reports/avance-fisico";
        readonly AVANCE_FINANCIERO: "/api/v1/reports/avance-financiero";
        readonly CURVA_S: "/api/v1/reports/curva-s";
        readonly PRESUPUESTO_VS_REAL: "/api/v1/reports/presupuesto-vs-real";
        readonly KPI_HSE: "/api/v1/reports/kpi-hse";
        readonly EXPORT: "/api/v1/reports/export";
    };
};
/**
 * HTTP Methods
 */
export declare const HTTP_METHODS: {
    readonly GET: "GET";
    readonly POST: "POST";
    readonly PUT: "PUT";
    readonly PATCH: "PATCH";
    readonly DELETE: "DELETE";
};
/**
 * HTTP Status Codes
 */
export declare const HTTP_STATUS: {
    readonly OK: 200;
    readonly CREATED: 201;
    readonly NO_CONTENT: 204;
    readonly BAD_REQUEST: 400;
    readonly UNAUTHORIZED: 401;
    readonly FORBIDDEN: 403;
    readonly NOT_FOUND: 404;
    readonly CONFLICT: 409;
    readonly UNPROCESSABLE_ENTITY: 422;
    readonly INTERNAL_SERVER_ERROR: 500;
    readonly SERVICE_UNAVAILABLE: 503;
};
/**
 * Content Types
 */
export declare const CONTENT_TYPES: {
    readonly JSON: "application/json";
    readonly FORM_URLENCODED: "application/x-www-form-urlencoded";
    readonly MULTIPART: "multipart/form-data";
    readonly PDF: "application/pdf";
    readonly EXCEL: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
};
//# sourceMappingURL=api.constants.d.ts.map