syntax = "proto3"; package did.v1; import "amino/amino.proto"; import "gogoproto/gogo.proto"; option go_package = "github.com/onsonr/sonr/x/did/types"; // GenesisState defines the module genesis state message GenesisState { // Params defines all the parameters of the module. Params params = 1 [(gogoproto.nullable) = false]; } // Params defines the set of module parameters. message Params { option (amino.name) = "did/params"; option (gogoproto.equal) = true; option (gogoproto.goproto_stringer) = false; repeated Attenuation attenuations = 1; } // Attenuation defines the attenuation of a resource message Attenuation { Resource resource = 1; repeated Capability capabilities = 2; } // Capability reprensents the available capabilities of a decentralized web node message Capability { string name = 1; string parent = 2; string description = 3; repeated string resources = 4; } // Resource reprensents the available resources of a decentralized web node message Resource { string kind = 1; string template = 2; } // Document defines a DID document message Document { string id = 1; string controller = 2; // The DID of the controller repeated string authentication = 3; repeated string assertion_method = 4; repeated string capability_delegation = 5; repeated string capability_invocation = 6; repeated string service = 7; }