module arch.node.types.storage; import prelude open; import arch.node.types.basics open; import arch.node.types.crypto open; import arch.node.types.identities open; type ACL := mkACL@{ members : Set ExternalID; version : Nat; sig : Commitment; }; type Chunk := mkChunk@{ children : List ChunkID; expiry : AbsTime; acl : Option ACL; content : ByteString; }; type ChunkContent := | InternalNode (List SecretKey) | LeafNode ByteString; type ChunkCommitment := mkChunkCommitment@{ chunk : ChunkID; node : NodeID; expiry : AbsTime; sig : Commitment; };