Restaurant:
    privaet:
        RestaurantInfo restaurantInfo
        TableManager tableManger

RestaurantInfo:
    private:
        String name
        String address
        String phoneNumber
Table:
    private:
        int tableId
        int seatingCapacity
        boolean isReserved


CustomerDetials:
    private:
        String name
        Stirng gender
        String phone
        String address

Request:
    private:
        int requestId
        Date date
        TimeSpan timeSpan
        int tableId
        CustomerDetials coustomerDetails

TimeSpan:
    private:
        String start;
        String end

TableManager:
    private:
        ArrayList<Table> tables
        ArrayList<Request> waitingList

    public:
        //processRequest(Request r)
        //isAvailable(Date date, TimeSpan timeSpan, )
        //findTable(request)
        /**
        This function will tell whether the booking is possible or
        not. If possible on the input time it will return true and
        file the tableNumber. If not at all possible then it will return false.
        */
        boolean CheckTableAvailability(Request r)
        void bookTable(Request r)