aws_db_instance, etc. Resource belongs to provider, accepts arguments, outputs attributes, has lifecycles. Resource can be created, retrieved, updated, and deleted.
terraform_remote_stateacts as a glue for higher level modules and compositions.
aws_security_group_listresources based on input. This resource module by itself can be used together with other modules to create infrastructure module.