The resource encoding layer takes in resources structures and encodes them to different destinations (such as the store layer).
Currently, only the store encoder is pre-defined. Other encoders (YAML, JSON, and CSV) are on their way.
The resource encoding can be used to save data to the store layer, export the data to the YAML file, convert a JSON file to a YAML file, and any other case you might wish to have.
The Store encoder knows how to store the provider resources into the store layer.
The store layer defines a series of intermediate state structures that are used to hold contextual information such as the resource’s ID and any references. State structures let us trivially perform create/update tasks and resolve dependent resource ID.