github.com/hashicorp/terraform-plugin-sdk@v1.17.2/internal/registry/response/module.go (about)

     1  package response
     2  
     3  // ModuleSubmodule is the metadata about a specific submodule within
     4  // a module. This includes the root module as a special case.
     5  type ModuleSubmodule struct {
     6  	Path   string `json:"path"`
     7  	Readme string `json:"readme"`
     8  	Empty  bool   `json:"empty"`
     9  
    10  	Inputs       []*ModuleInput    `json:"inputs"`
    11  	Outputs      []*ModuleOutput   `json:"outputs"`
    12  	Dependencies []*ModuleDep      `json:"dependencies"`
    13  	Resources    []*ModuleResource `json:"resources"`
    14  }
    15  
    16  // ModuleInput is an input for a module.
    17  type ModuleInput struct {
    18  	Name        string `json:"name"`
    19  	Description string `json:"description"`
    20  	Default     string `json:"default"`
    21  }
    22  
    23  // ModuleOutput is an output for a module.
    24  type ModuleOutput struct {
    25  	Name        string `json:"name"`
    26  	Description string `json:"description"`
    27  }
    28  
    29  // ModuleDep is an output for a module.
    30  type ModuleDep struct {
    31  	Name    string `json:"name"`
    32  	Source  string `json:"source"`
    33  	Version string `json:"version"`
    34  }
    35  
    36  // ModuleProviderDep is the output for a provider dependency
    37  type ModuleProviderDep struct {
    38  	Name    string `json:"name"`
    39  	Version string `json:"version"`
    40  }
    41  
    42  // ModuleResource is an output for a module.
    43  type ModuleResource struct {
    44  	Name string `json:"name"`
    45  	Type string `json:"type"`
    46  }