import { OnGatewayConnection, OnGatewayDisconnect } from '@nestjs/websockets';
import { Server, Socket } from 'socket.io';
import { SocketService } from './socket.service';
import { UpdateLocationDto } from './dto/socket.dto';
import { JwtService } from '@nestjs/jwt';
import { CreateConnectionDto, GetMessageDto, SendMessageDto } from 'src/chat/dto/chat.dto';
import { ChatService } from 'src/chat/chat.service';
interface CustomSocket extends Socket {
    user: any;
}
export declare class SocketGateway implements OnGatewayConnection, OnGatewayDisconnect {
    private readonly socketService;
    private readonly jwtService;
    private readonly chatService;
    constructor(socketService: SocketService, jwtService: JwtService, chatService: ChatService);
    server: Server;
    handleConnection(socket: CustomSocket): Promise<void>;
    handleDisconnect(socket: CustomSocket): Promise<void>;
    handleUpdateLocation(socket: CustomSocket, payload: UpdateLocationDto): Promise<void>;
    handleCreateConnection(socket: CustomSocket, body: CreateConnectionDto): Promise<void>;
    handleLeaveConnection(socket: CustomSocket, body: CreateConnectionDto): Promise<void>;
    handleSendMessage(socket: CustomSocket, body: SendMessageDto): Promise<void>;
    handleGetAllMessage(socket: CustomSocket, body: GetMessageDto): Promise<void>;
    handleReadMessage(socket: CustomSocket, body: GetMessageDto): Promise<void>;
    CurrentRideRequest(socket: CustomSocket): Promise<void>;
}
export {};
