# Packages
Package schema contains all available schema functionality for data sources.
# Structs
ConfigureRequest represents a request for the provider to configure a data source, i.e., set provider-level data or clients.
ConfigureResponse represents a response to a ConfigureRequest.
MetadataRequest represents a request for the DataSource to return metadata, such as its type name.
MetadataResponse represents a response to a MetadataRequest.
ReadRequest represents a request for the provider to read a data source, i.e., update values in state according to the real state of the data source.
ReadResponse represents a response to a ReadRequest.
SchemaRequest represents a request for the DataSource to return its schema.
SchemaResponse represents a response to a SchemaRequest.
ValidateConfigRequest represents a request to validate the configuration of a data source.
ValidateConfigResponse represents a response to a ValidateConfigRequest.
# Interfaces
ConfigValidator describes reusable data source configuration validation functionality.
DataSource represents an instance of a data source type.
DataSourceWithConfigure is an interface type that extends DataSource to include a method which the framework will automatically call so provider developers have the opportunity to setup any necessary provider-level data or clients in the DataSource type.
DataSourceWithConfigValidators is an interface type that extends DataSource to include declarative validations.
DataSourceWithGetSchema is a temporary interface type that extends DataSource to include the deprecated GetSchema method.
DataSourceWithSchema is a temporary interface type that extends DataSource to include the new Schema method.
DataSourceWithValidateConfig is an interface type that extends DataSource to include imperative validation.