To declare dependencies to a package you can, as Joseph said, mail the TeX Live maintainers and they will sort it out accordingly. Recently (mid-2020 or so), a new way of declaring dependencies was introduced: you upload, along with your package, a file called (exactly) DEPENDS.txt that will live in the top-level directory of your package, along with the README.
There are two types of dependencies you can declare: hard and soft. hard is when your package always needs the dependency, and soft is when the dependency is conditional somehow. For example, the DEPENDS.txt file from a package for math typesetting could look like:
hard amsfonts
soft unicode-math
when amsfonts is always needed and unicode-math only when using XeTeX or LuaTeX.
You can find the full specification of the DEPENDS.txt file in https://www.tug.org/texlive/pkgcontrib.html#deps.
Note that the package name is the CTAN package name, which may differ from the package that you load with \usepackage. For example, in a package I wrote I have DEPENDS.txt:
hard l3kernel
because the package does \usepackage{expl3}.