from typing import List
from typing import Tuple
from textwrap import dedent


def get_rt_object_to_complete_texts() -> List[Tuple[str, str]]:
    """Returns a list of tuples of riptable code object text with associated completion text."""
    return [
        (
            dedent(
                '''Dataset({_k: list(range(_i * 10, (_i + 1) * 10)) for _i, _k in enumerate(
            ["alpha", "beta", "gamma", "delta", "epsilon", "zeta", "eta", "theta", "iota", "kappa", "lambada", "mu",
             "nu", "xi", "omnicron", "pi"])})'''
            ),
            "dataset.",
        ),
        (
            dedent(
                '''Struct({"alpha": 1, "beta": [2, 3], "gamma": ['2', '3'], "delta": arange(10),
            "epsilon": Struct({
                "theta": Struct({
                    "kappa": 3,
                    "zeta": 4,
                    }),
                "iota": 2,
                })
            })'''
            ),
            "struct.",
        ),
        (
            dedent(
                '''Multiset(
    {"ds_alpha": Dataset({k: list(range(i * 10, (i + 1) * 10)) for i, k in enumerate(
                ["alpha", "beta", "gamma", "delta", "epsilon", "zeta"])}),
     "ds_beta": Dataset({k: list(range(i * 10, (i + 1) * 10)) for i, k in enumerate(
                ["eta", "theta", "iota", "kappa", "lambada", "mu"])}),
                })'''
            ),
            "multiset.",
        ),
    ]