What's correct way to write a module separate in multiple files to maximum ide auto complete support?

As said in doc Modules and files, modules can be separated into multiple files like

module Foo
include("file1.jl")
include("file2.jl")
end

However there would be one problem, suppose we are developing a module, and would like to separate implementations into data.jl, func0.jl and func1.jl, and data.jl is for definition of structures, func0.jl and func1.jl are some function definitions, using context of data.jl for multidispatch.
Then it seems the module definition would be

module MyModule
include("data.jl")
include("func0.jl")
include("func1.jl")
end

It works, but the problem is when writing func0.jl and func1.jl, we do not have definitions of structures, and auto complete/hints may fail.

If we are using python, we may have file structure

__init__.py
data.py
func0.py
func1.py

and simply use from .data import SomeDataClass in func0.py, I’m wondering what’s the correct julia way of dealing with this.

Which IDE are you using?

Thanks for your reply.

I’m using VS Code, with Julia 1.0.

Although there might be problem caused by extension problems to Julia 1.0.
Currently VS Code have a minimal support for auto complete if all code were in one file.
And I’m wondering if I do not put any hint in one file(no include/import/using at all), how can IDE/plugin/extension known where to find definitions?