No, this isn’t possible because of how integers are treated. All integers fall under the generic type of number, and the Luau type checking engine doesn’t allow otherwise. You can, however, use other keys of the same type (such as strings) because they are treated differently by the type checker, almost as if they are their own type.
type Array = {
[true]: "hi",
["hi"]: "bye"
}
when you say you want to type check specific indices, what do you mean by this? Do you mean statically check them pre-runtime, through something like a type function, or check them at runtime with functions like type and typeof?