/** * This file was auto-generated by openapi-typescript. * Do not make direct changes to the file. */ export interface paths { "/api/health": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get: operations["getApiHealth"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/session": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get: operations["getApiSession"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/apikey/": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** * Get all API keys * @description Get all API keys */ get: operations["getApiApikey"]; put?: never; /** * Create a new API key * @description Create a new API key */ post: operations["postApiApikey"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/apikey/update": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get?: never; put?: never; /** * Update an API key * @description Update an API key */ post: operations["postApiApikeyUpdate"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/apikey/delete": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get?: never; put?: never; /** * Delete an API key * @description Delete an API key */ post: operations["postApiApikeyDelete"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/profile/update": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get?: never; put?: never; /** * Update user profile * @description Update the authenticated user's name or profile image */ post: operations["postApiProfileUpdate"]; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/division/": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** Get all divisions */ get: operations["getApiDivision"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/division/activities": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** Get recent activities */ get: operations["getApiDivisionActivities"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/division/metrics": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** Get division performance metrics */ get: operations["getApiDivisionMetrics"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/complaint/stats": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** Get complaint statistics */ get: operations["getApiComplaintStats"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/complaint/recent": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** Get recent complaints */ get: operations["getApiComplaintRecent"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/complaint/service-stats": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** Get service letter statistics by type */ get: operations["getApiComplaintService-stats"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/complaint/innovation-ideas": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** Get recent innovation ideas */ get: operations["getApiComplaintInnovation-ideas"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/complaint/service-trends": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** Get service letter trends for last 6 months */ get: operations["getApiComplaintService-trends"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/complaint/service-weekly": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** Get service letter count for current week */ get: operations["getApiComplaintService-weekly"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/resident/stats": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** Get resident statistics */ get: operations["getApiResidentStats"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/resident/banjar-stats": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** Get population data per banjar */ get: operations["getApiResidentBanjar-stats"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/resident/demographics": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** Get demographics including religion, gender, occupation and age */ get: operations["getApiResidentDemographics"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/event/": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** Get upcoming events */ get: operations["getApiEvent"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/event/today": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; /** Get events for today */ get: operations["getApiEventToday"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/dashboard/budget": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get: operations["getApiDashboardBudget"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/dashboard/sdgs": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get: operations["getApiDashboardSdgs"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; "/api/dashboard/satisfaction": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; get: operations["getApiDashboardSatisfaction"]; put?: never; post?: never; delete?: never; options?: never; head?: never; patch?: never; trace?: never; }; } export type webhooks = Record; export interface components { schemas: never; responses: never; parameters: never; requestBodies: never; headers: never; pathItems: never; } export type $defs = Record; export interface operations { getApiHealth: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { 200: { headers: { [name: string]: unknown; }; content: { "application/json": { ok: boolean; }; "multipart/form-data": { ok: boolean; }; "text/plain": { ok: boolean; }; }; }; }; }; getApiSession: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { 200: { headers: { [name: string]: unknown; }; content: { "application/json": { data: unknown; }; "multipart/form-data": { data: unknown; }; "text/plain": { data: unknown; }; }; }; }; }; getApiApikey: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { 200: { headers: { [name: string]: unknown; }; content: { "application/json": { apiKeys: { id: string; name: string; key: string; isActive: boolean; expiresAt: string | null | unknown; createdAt: unknown; updatedAt: unknown; }[]; }; "multipart/form-data": { apiKeys: { id: string; name: string; key: string; isActive: boolean; expiresAt: string | null | unknown; createdAt: unknown; updatedAt: unknown; }[]; }; "text/plain": { apiKeys: { id: string; name: string; key: string; isActive: boolean; expiresAt: string | null | unknown; createdAt: unknown; updatedAt: unknown; }[]; }; }; }; 401: { headers: { [name: string]: unknown; }; content: { "application/json": { error: string; }; "multipart/form-data": { error: string; }; "text/plain": { error: string; }; }; }; 500: { headers: { [name: string]: unknown; }; content: { "application/json": { error: string; }; "multipart/form-data": { error: string; }; "text/plain": { error: string; }; }; }; }; }; postApiApikey: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody: { content: { "application/json": { name: string; expiresAt?: string; }; "multipart/form-data": { name: string; expiresAt?: string; }; "text/plain": { name: string; expiresAt?: string; }; }; }; responses: { 200: { headers: { [name: string]: unknown; }; content: { "application/json": { apiKey: { id: string; name: string; key: string; isActive: boolean; expiresAt: string | null | unknown; createdAt: unknown; updatedAt: unknown; }; }; "multipart/form-data": { apiKey: { id: string; name: string; key: string; isActive: boolean; expiresAt: string | null | unknown; createdAt: unknown; updatedAt: unknown; }; }; "text/plain": { apiKey: { id: string; name: string; key: string; isActive: boolean; expiresAt: string | null | unknown; createdAt: unknown; updatedAt: unknown; }; }; }; }; 401: { headers: { [name: string]: unknown; }; content: { "application/json": { error: string; }; "multipart/form-data": { error: string; }; "text/plain": { error: string; }; }; }; 500: { headers: { [name: string]: unknown; }; content: { "application/json": { error: string; }; "multipart/form-data": { error: string; }; "text/plain": { error: string; }; }; }; }; }; postApiApikeyUpdate: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody: { content: { "application/json": { id: string; isActive: boolean; expiresAt?: string | null; }; "multipart/form-data": { id: string; isActive: boolean; expiresAt?: string | null; }; "text/plain": { id: string; isActive: boolean; expiresAt?: string | null; }; }; }; responses: { 200: { headers: { [name: string]: unknown; }; content: { "application/json": { apiKey: { id: string; name: string; key: string; isActive: boolean; expiresAt: string | null | unknown; createdAt: unknown; updatedAt: unknown; }; }; "multipart/form-data": { apiKey: { id: string; name: string; key: string; isActive: boolean; expiresAt: string | null | unknown; createdAt: unknown; updatedAt: unknown; }; }; "text/plain": { apiKey: { id: string; name: string; key: string; isActive: boolean; expiresAt: string | null | unknown; createdAt: unknown; updatedAt: unknown; }; }; }; }; 401: { headers: { [name: string]: unknown; }; content: { "application/json": { error: string; }; "multipart/form-data": { error: string; }; "text/plain": { error: string; }; }; }; 403: { headers: { [name: string]: unknown; }; content: { "application/json": { error: string; }; "multipart/form-data": { error: string; }; "text/plain": { error: string; }; }; }; 500: { headers: { [name: string]: unknown; }; content: { "application/json": { error: string; }; "multipart/form-data": { error: string; }; "text/plain": { error: string; }; }; }; }; }; postApiApikeyDelete: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody: { content: { "application/json": { id: string; }; "multipart/form-data": { id: string; }; "text/plain": { id: string; }; }; }; responses: { 200: { headers: { [name: string]: unknown; }; content: { "application/json": { success: boolean; }; "multipart/form-data": { success: boolean; }; "text/plain": { success: boolean; }; }; }; 401: { headers: { [name: string]: unknown; }; content: { "application/json": { error: string; }; "multipart/form-data": { error: string; }; "text/plain": { error: string; }; }; }; 403: { headers: { [name: string]: unknown; }; content: { "application/json": { error: string; }; "multipart/form-data": { error: string; }; "text/plain": { error: string; }; }; }; 500: { headers: { [name: string]: unknown; }; content: { "application/json": { error: string; }; "multipart/form-data": { error: string; }; "text/plain": { error: string; }; }; }; }; }; postApiProfileUpdate: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody: { content: { "application/json": { name?: string; image?: string; }; "multipart/form-data": { name?: string; image?: string; }; "text/plain": { name?: string; image?: string; }; }; }; responses: { 200: { headers: { [name: string]: unknown; }; content: { "application/json": { user: { id: string; name: unknown; email: string; image: unknown; role: unknown; }; }; "multipart/form-data": { user: { id: string; name: unknown; email: string; image: unknown; role: unknown; }; }; "text/plain": { user: { id: string; name: unknown; email: string; image: unknown; role: unknown; }; }; }; }; 401: { headers: { [name: string]: unknown; }; content: { "application/json": { error: string; }; "multipart/form-data": { error: string; }; "text/plain": { error: string; }; }; }; 500: { headers: { [name: string]: unknown; }; content: { "application/json": { error: string; }; "multipart/form-data": { error: string; }; "text/plain": { error: string; }; }; }; }; }; getApiDivision: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { 200: { headers: { [name: string]: unknown; }; content: { "application/json": { data: unknown[]; }; "multipart/form-data": { data: unknown[]; }; "text/plain": { data: unknown[]; }; }; }; 500: { headers: { [name: string]: unknown; }; content: { "application/json": { error: string; }; "multipart/form-data": { error: string; }; "text/plain": { error: string; }; }; }; }; }; getApiDivisionActivities: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { 200: { headers: { [name: string]: unknown; }; content: { "application/json": { data: unknown[]; }; "multipart/form-data": { data: unknown[]; }; "text/plain": { data: unknown[]; }; }; }; 500: { headers: { [name: string]: unknown; }; content: { "application/json": { error: string; }; "multipart/form-data": { error: string; }; "text/plain": { error: string; }; }; }; }; }; getApiDivisionMetrics: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { 200: { headers: { [name: string]: unknown; }; content: { "application/json": { data: unknown[]; }; "multipart/form-data": { data: unknown[]; }; "text/plain": { data: unknown[]; }; }; }; 500: { headers: { [name: string]: unknown; }; content: { "application/json": { error: string; }; "multipart/form-data": { error: string; }; "text/plain": { error: string; }; }; }; }; }; getApiComplaintStats: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { 200: { headers: { [name: string]: unknown; }; content: { "application/json": { data: { total: number; baru: number; proses: number; selesai: number; }; }; "multipart/form-data": { data: { total: number; baru: number; proses: number; selesai: number; }; }; "text/plain": { data: { total: number; baru: number; proses: number; selesai: number; }; }; }; }; 500: { headers: { [name: string]: unknown; }; content: { "application/json": { error: string; }; "multipart/form-data": { error: string; }; "text/plain": { error: string; }; }; }; }; }; getApiComplaintRecent: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { 200: { headers: { [name: string]: unknown; }; content: { "application/json": { data: unknown[]; }; "multipart/form-data": { data: unknown[]; }; "text/plain": { data: unknown[]; }; }; }; 500: { headers: { [name: string]: unknown; }; content: { "application/json": { error: string; }; "multipart/form-data": { error: string; }; "text/plain": { error: string; }; }; }; }; }; "getApiComplaintService-stats": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { 200: { headers: { [name: string]: unknown; }; content: { "application/json": { data: unknown[]; }; "multipart/form-data": { data: unknown[]; }; "text/plain": { data: unknown[]; }; }; }; 500: { headers: { [name: string]: unknown; }; content: { "application/json": { error: string; }; "multipart/form-data": { error: string; }; "text/plain": { error: string; }; }; }; }; }; "getApiComplaintInnovation-ideas": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { 200: { headers: { [name: string]: unknown; }; content: { "application/json": { data: unknown[]; }; "multipart/form-data": { data: unknown[]; }; "text/plain": { data: unknown[]; }; }; }; 500: { headers: { [name: string]: unknown; }; content: { "application/json": { error: string; }; "multipart/form-data": { error: string; }; "text/plain": { error: string; }; }; }; }; }; "getApiComplaintService-trends": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { 200: { headers: { [name: string]: unknown; }; content: { "application/json": { data: unknown[]; }; "multipart/form-data": { data: unknown[]; }; "text/plain": { data: unknown[]; }; }; }; 500: { headers: { [name: string]: unknown; }; content: { "application/json": { error: string; }; "multipart/form-data": { error: string; }; "text/plain": { error: string; }; }; }; }; }; "getApiComplaintService-weekly": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { 200: { headers: { [name: string]: unknown; }; content: { "application/json": { data: { count: number; }; }; "multipart/form-data": { data: { count: number; }; }; "text/plain": { data: { count: number; }; }; }; }; 500: { headers: { [name: string]: unknown; }; content: { "application/json": { error: string; }; "multipart/form-data": { error: string; }; "text/plain": { error: string; }; }; }; }; }; getApiResidentStats: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { 200: { headers: { [name: string]: unknown; }; content: { "application/json": { data: { total: number; heads: number; poor: number; }; }; "multipart/form-data": { data: { total: number; heads: number; poor: number; }; }; "text/plain": { data: { total: number; heads: number; poor: number; }; }; }; }; 500: { headers: { [name: string]: unknown; }; content: { "application/json": { error: string; }; "multipart/form-data": { error: string; }; "text/plain": { error: string; }; }; }; }; }; "getApiResidentBanjar-stats": { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { 200: { headers: { [name: string]: unknown; }; content: { "application/json": { data: unknown[]; }; "multipart/form-data": { data: unknown[]; }; "text/plain": { data: unknown[]; }; }; }; 500: { headers: { [name: string]: unknown; }; content: { "application/json": { error: string; }; "multipart/form-data": { error: string; }; "text/plain": { error: string; }; }; }; }; }; getApiResidentDemographics: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { 200: { headers: { [name: string]: unknown; }; content: { "application/json": { data: { religion: unknown[]; gender: unknown[]; occupation: unknown[]; ageGroups: unknown[]; }; }; "multipart/form-data": { data: { religion: unknown[]; gender: unknown[]; occupation: unknown[]; ageGroups: unknown[]; }; }; "text/plain": { data: { religion: unknown[]; gender: unknown[]; occupation: unknown[]; ageGroups: unknown[]; }; }; }; }; 500: { headers: { [name: string]: unknown; }; content: { "application/json": { error: string; }; "multipart/form-data": { error: string; }; "text/plain": { error: string; }; }; }; }; }; getApiEvent: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { 200: { headers: { [name: string]: unknown; }; content: { "application/json": { data: unknown[]; }; "multipart/form-data": { data: unknown[]; }; "text/plain": { data: unknown[]; }; }; }; 500: { headers: { [name: string]: unknown; }; content: { "application/json": { error: string; }; "multipart/form-data": { error: string; }; "text/plain": { error: string; }; }; }; }; }; getApiEventToday: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { 200: { headers: { [name: string]: unknown; }; content: { "application/json": { data: unknown[]; }; "multipart/form-data": { data: unknown[]; }; "text/plain": { data: unknown[]; }; }; }; 500: { headers: { [name: string]: unknown; }; content: { "application/json": { error: string; }; "multipart/form-data": { error: string; }; "text/plain": { error: string; }; }; }; }; }; getApiDashboardBudget: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { 200: { headers: { [name: string]: unknown; }; content: { "application/json": { data: { category: string; amount: number; percentage: number; color: string; }[]; }; "multipart/form-data": { data: { category: string; amount: number; percentage: number; color: string; }[]; }; "text/plain": { data: { category: string; amount: number; percentage: number; color: string; }[]; }; }; }; }; }; getApiDashboardSdgs: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { 200: { headers: { [name: string]: unknown; }; content: { "application/json": { data: { title: string; score: number; image: (string | null) | null; }[]; }; "multipart/form-data": { data: { title: string; score: number; image: (string | null) | null; }[]; }; "text/plain": { data: { title: string; score: number; image: (string | null) | null; }[]; }; }; }; }; }; getApiDashboardSatisfaction: { parameters: { query?: never; header?: never; path?: never; cookie?: never; }; requestBody?: never; responses: { 200: { headers: { [name: string]: unknown; }; content: { "application/json": { data: { category: string; value: number; color: string; }[]; }; "multipart/form-data": { data: { category: string; value: number; color: string; }[]; }; "text/plain": { data: { category: string; value: number; color: string; }[]; }; }; }; }; }; }