syntax = "proto3";

package authpb;

option java_multiple_files = true;
option java_package = "io.helidon.config.etcd.internal.client.proto";

// User is a single entry in the bucket authUsers
message User {
    bytes name = 1;
    bytes password = 2;
    repeated string roles = 3;
}

// Permission is a single entity
message Permission {
    enum Type {
        READ = 0;
        WRITE = 1;
        READWRITE = 2;
    }
    Type permType = 1;

    bytes key = 2;
    bytes range_end = 3;
}

// Role is a single entry in the bucket authRoles
message Role {
    bytes name = 1;

    repeated Permission keyPermission = 2;
}