from __future__ import annotations

from typing import Any, Optional

from paddle.io import Dataset

age_table: Any
URL: str
MD5: str

class MovieInfo:
    index: Any = ...
    categories: Any = ...
    title: Any = ...
    def __init__(self, index: Any, categories: Any, title: Any) -> None: ...
    def value(self, categories_dict: Any, movie_title_dict: Any): ...

class UserInfo:
    index: Any = ...
    is_male: Any = ...
    age: Any = ...
    job_id: Any = ...
    def __init__(self, index: Any, gender: Any, age: Any, job_id: Any) -> None: ...
    def value(self): ...

class Movielens(Dataset):
    mode: Any = ...
    data_file: Any = ...
    test_ratio: Any = ...
    rand_seed: Any = ...
    def __init__(
        self,
        data_file: Optional[Any] = ...,
        mode: str = ...,
        test_ratio: float = ...,
        rand_seed: int = ...,
        download: bool = ...,
    ) -> None: ...
    def __getitem__(self, idx: Any): ...
    def __len__(self): ...
