Timelines
https://github.com/BitBadges/bitbadgeschain/blob/master/proto/badges/timelines.proto
syntax = "proto3";
package badges;
import "google/protobuf/any.proto";
import "badges/transfers.proto";
import "badges/balances.proto";
import "badges/permissions.proto";
import "badges/metadata.proto";
import "gogoproto/gogo.proto";
option go_package = "github.com/bitbadges/bitbadgeschain/x/badges/types";
// CollectionMetadataTimeline defines the metadata for a collection at different timeline times.
message CollectionMetadataTimeline {
// The collection metadata for a specific timeline element.
CollectionMetadata collectionMetadata = 1;
// The timeline times when the collection metadata is valid. Can not overlap with other timeline elements in same array.
repeated UintRange timelineTimes = 2;
}
// BadgeMetadataTimeline defines the metadata for tokens at different timeline times.
message BadgeMetadataTimeline {
// The token metadata for a specific timeline element.
repeated BadgeMetadata badgeMetadata = 1;
// The timeline times when the token metadata is valid. Can not overlap with other timeline elements in same array.
repeated UintRange timelineTimes = 2;
}
// OffChainBalancesMetadataTimeline defines the metadata for off-chain balances at different timeline times.
message OffChainBalancesMetadataTimeline {
// The off-chain balances metadata for a specific timeline element.
OffChainBalancesMetadata offChainBalancesMetadata = 1;
// The timeline times when the off-chain balances metadata is valid. Can not overlap with other timeline elements in same array.
repeated UintRange timelineTimes = 2;
}
// CustomDataTimeline defines custom data at different timeline times.
message CustomDataTimeline {
// The custom data for a specific timeline element.
string customData = 1;
// The timeline times when the custom data is valid. Can not overlap with other timeline elements in same array.
repeated UintRange timelineTimes = 2;
}
// ManagerTimeline defines the manager address at different timeline times.
message ManagerTimeline {
// The manager address for a specific timeline element.
string manager = 1;
// The timeline times when the manager address is valid. Can not overlap with other timeline elements in same array.
repeated UintRange timelineTimes = 2;
}
// IsArchivedTimeline defines whether a collection is archived at different timeline times.
message IsArchivedTimeline {
// Indicates whether the collection is archived for a specific timeline element.
bool isArchived = 1;
// The timeline times when the archived status is valid. Can not overlap with other timeline elements in same array.
repeated UintRange timelineTimes = 2;
}
// ContractAddressTimeline defines the contract address at different timeline times.
message ContractAddressTimeline {
// The contract address for a specific timeline element.
string contractAddress = 1;
// The timeline times when the contract address is valid. Can not overlap with other timeline elements in same array.
repeated UintRange timelineTimes = 2;
}
// StandardsTimeline defines the standards used for a collection at different timeline times.
message StandardsTimeline {
// The standards applied to the collection for a specific timeline element.
repeated string standards = 1;
// The timeline times when the standards are valid. Can not overlap with other timeline elements in same array.
repeated UintRange timelineTimes = 2;
}
Last updated