@cerbos/http
Version:
Client library for interacting with the Cerbos policy decision point service over HTTP from browser-based applications
1,659 lines (1,521 loc) • 49.8 kB
text/typescript
// Code generated by protoc-gen-ts_proto. DO NOT EDIT.
// source: cerbos/response/v1/response.proto
/* eslint-disable */
import { Empty } from "../../../google/protobuf/empty";
import { AccessLogEntry, DecisionLogEntry } from "../../audit/v1/audit";
import { Effect, effectFromJSON, effectToJSON } from "../../effect/v1/effect";
import { OutputEntry, PlanResourcesFilter } from "../../engine/v1/engine";
import { Policy } from "../../policy/v1/policy";
import { Schema, ValidationError } from "../../schema/v1/schema";
export const protobufPackage = "cerbos.response.v1";
export interface PlanResourcesResponse {
requestId: string;
action: string;
resourceKind: string;
policyVersion: string;
filter: PlanResourcesFilter | undefined;
meta: PlanResourcesResponse_Meta | undefined;
validationErrors: ValidationError[];
cerbosCallId: string;
}
export interface PlanResourcesResponse_Meta {
filterDebug: string;
matchedScope: string;
}
export interface CheckResourceSetResponse {
requestId: string;
resourceInstances: {
[key: string]: CheckResourceSetResponse_ActionEffectMap;
};
meta: CheckResourceSetResponse_Meta | undefined;
}
export interface CheckResourceSetResponse_ActionEffectMap {
actions: { [key: string]: Effect };
validationErrors: ValidationError[];
}
export interface CheckResourceSetResponse_ActionEffectMap_ActionsEntry {
key: string;
value: Effect;
}
export interface CheckResourceSetResponse_Meta {
resourceInstances: {
[key: string]: CheckResourceSetResponse_Meta_ActionMeta;
};
}
export interface CheckResourceSetResponse_Meta_EffectMeta {
matchedPolicy: string;
matchedScope: string;
}
export interface CheckResourceSetResponse_Meta_ActionMeta {
actions: { [key: string]: CheckResourceSetResponse_Meta_EffectMeta };
effectiveDerivedRoles: string[];
}
export interface CheckResourceSetResponse_Meta_ActionMeta_ActionsEntry {
key: string;
value: CheckResourceSetResponse_Meta_EffectMeta | undefined;
}
export interface CheckResourceSetResponse_Meta_ResourceInstancesEntry {
key: string;
value: CheckResourceSetResponse_Meta_ActionMeta | undefined;
}
export interface CheckResourceSetResponse_ResourceInstancesEntry {
key: string;
value: CheckResourceSetResponse_ActionEffectMap | undefined;
}
export interface CheckResourceBatchResponse {
requestId: string;
results: CheckResourceBatchResponse_ActionEffectMap[];
}
export interface CheckResourceBatchResponse_ActionEffectMap {
resourceId: string;
actions: { [key: string]: Effect };
validationErrors: ValidationError[];
}
export interface CheckResourceBatchResponse_ActionEffectMap_ActionsEntry {
key: string;
value: Effect;
}
export interface CheckResourcesResponse {
requestId: string;
results: CheckResourcesResponse_ResultEntry[];
cerbosCallId: string;
}
export interface CheckResourcesResponse_ResultEntry {
resource: CheckResourcesResponse_ResultEntry_Resource | undefined;
actions: { [key: string]: Effect };
validationErrors: ValidationError[];
meta: CheckResourcesResponse_ResultEntry_Meta | undefined;
outputs: OutputEntry[];
}
export interface CheckResourcesResponse_ResultEntry_Resource {
id: string;
kind: string;
policyVersion: string;
scope: string;
}
export interface CheckResourcesResponse_ResultEntry_Meta {
actions: {
[key: string]: CheckResourcesResponse_ResultEntry_Meta_EffectMeta;
};
effectiveDerivedRoles: string[];
}
export interface CheckResourcesResponse_ResultEntry_Meta_EffectMeta {
matchedPolicy: string;
matchedScope: string;
}
export interface CheckResourcesResponse_ResultEntry_Meta_ActionsEntry {
key: string;
value: CheckResourcesResponse_ResultEntry_Meta_EffectMeta | undefined;
}
export interface CheckResourcesResponse_ResultEntry_ActionsEntry {
key: string;
value: Effect;
}
export interface AddOrUpdatePolicyResponse {
success: Empty | undefined;
}
export interface ListAuditLogEntriesResponse {
entry?:
| { $case: "accessLogEntry"; accessLogEntry: AccessLogEntry }
| {
$case: "decisionLogEntry";
decisionLogEntry: DecisionLogEntry;
}
| undefined;
}
export interface ServerInfoResponse {
version: string;
commit: string;
buildDate: string;
}
export interface ListPoliciesResponse {
policyIds: string[];
}
export interface GetPolicyResponse {
policies: Policy[];
}
export interface DisablePolicyResponse {
disabledPolicies: number;
}
export interface EnablePolicyResponse {
enabledPolicies: number;
}
export interface InspectPoliciesResponse {
results: { [key: string]: InspectPoliciesResponse_Result };
}
export interface InspectPoliciesResponse_Attribute {
kind: InspectPoliciesResponse_Attribute_Kind;
name: string;
}
export enum InspectPoliciesResponse_Attribute_Kind {
KIND_UNSPECIFIED = 0,
KIND_PRINCIPAL_ATTRIBUTE = 1,
KIND_RESOURCE_ATTRIBUTE = 2,
}
export function inspectPoliciesResponse_Attribute_KindFromJSON(
object: any,
): InspectPoliciesResponse_Attribute_Kind {
switch (object) {
case 0:
case "KIND_UNSPECIFIED":
return InspectPoliciesResponse_Attribute_Kind.KIND_UNSPECIFIED;
case 1:
case "KIND_PRINCIPAL_ATTRIBUTE":
return InspectPoliciesResponse_Attribute_Kind.KIND_PRINCIPAL_ATTRIBUTE;
case 2:
case "KIND_RESOURCE_ATTRIBUTE":
return InspectPoliciesResponse_Attribute_Kind.KIND_RESOURCE_ATTRIBUTE;
default:
throw new globalThis.Error(
"Unrecognized enum value " +
object +
" for enum InspectPoliciesResponse_Attribute_Kind",
);
}
}
export function inspectPoliciesResponse_Attribute_KindToJSON(
object: InspectPoliciesResponse_Attribute_Kind,
): string {
switch (object) {
case InspectPoliciesResponse_Attribute_Kind.KIND_UNSPECIFIED:
return "KIND_UNSPECIFIED";
case InspectPoliciesResponse_Attribute_Kind.KIND_PRINCIPAL_ATTRIBUTE:
return "KIND_PRINCIPAL_ATTRIBUTE";
case InspectPoliciesResponse_Attribute_Kind.KIND_RESOURCE_ATTRIBUTE:
return "KIND_RESOURCE_ATTRIBUTE";
default:
throw new globalThis.Error(
"Unrecognized enum value " +
object +
" for enum InspectPoliciesResponse_Attribute_Kind",
);
}
}
export interface InspectPoliciesResponse_DerivedRole {
name: string;
kind: InspectPoliciesResponse_DerivedRole_Kind;
source: string;
}
export enum InspectPoliciesResponse_DerivedRole_Kind {
KIND_UNSPECIFIED = 0,
KIND_UNDEFINED = 1,
KIND_EXPORTED = 2,
KIND_IMPORTED = 3,
}
export function inspectPoliciesResponse_DerivedRole_KindFromJSON(
object: any,
): InspectPoliciesResponse_DerivedRole_Kind {
switch (object) {
case 0:
case "KIND_UNSPECIFIED":
return InspectPoliciesResponse_DerivedRole_Kind.KIND_UNSPECIFIED;
case 1:
case "KIND_UNDEFINED":
return InspectPoliciesResponse_DerivedRole_Kind.KIND_UNDEFINED;
case 2:
case "KIND_EXPORTED":
return InspectPoliciesResponse_DerivedRole_Kind.KIND_EXPORTED;
case 3:
case "KIND_IMPORTED":
return InspectPoliciesResponse_DerivedRole_Kind.KIND_IMPORTED;
default:
throw new globalThis.Error(
"Unrecognized enum value " +
object +
" for enum InspectPoliciesResponse_DerivedRole_Kind",
);
}
}
export function inspectPoliciesResponse_DerivedRole_KindToJSON(
object: InspectPoliciesResponse_DerivedRole_Kind,
): string {
switch (object) {
case InspectPoliciesResponse_DerivedRole_Kind.KIND_UNSPECIFIED:
return "KIND_UNSPECIFIED";
case InspectPoliciesResponse_DerivedRole_Kind.KIND_UNDEFINED:
return "KIND_UNDEFINED";
case InspectPoliciesResponse_DerivedRole_Kind.KIND_EXPORTED:
return "KIND_EXPORTED";
case InspectPoliciesResponse_DerivedRole_Kind.KIND_IMPORTED:
return "KIND_IMPORTED";
default:
throw new globalThis.Error(
"Unrecognized enum value " +
object +
" for enum InspectPoliciesResponse_DerivedRole_Kind",
);
}
}
export interface InspectPoliciesResponse_Constant {
name: string;
value: any | undefined;
kind: InspectPoliciesResponse_Constant_Kind;
source: string;
used: boolean;
}
export enum InspectPoliciesResponse_Constant_Kind {
KIND_UNSPECIFIED = 0,
KIND_EXPORTED = 1,
KIND_IMPORTED = 2,
KIND_LOCAL = 3,
KIND_UNDEFINED = 4,
KIND_UNKNOWN = 5,
}
export function inspectPoliciesResponse_Constant_KindFromJSON(
object: any,
): InspectPoliciesResponse_Constant_Kind {
switch (object) {
case 0:
case "KIND_UNSPECIFIED":
return InspectPoliciesResponse_Constant_Kind.KIND_UNSPECIFIED;
case 1:
case "KIND_EXPORTED":
return InspectPoliciesResponse_Constant_Kind.KIND_EXPORTED;
case 2:
case "KIND_IMPORTED":
return InspectPoliciesResponse_Constant_Kind.KIND_IMPORTED;
case 3:
case "KIND_LOCAL":
return InspectPoliciesResponse_Constant_Kind.KIND_LOCAL;
case 4:
case "KIND_UNDEFINED":
return InspectPoliciesResponse_Constant_Kind.KIND_UNDEFINED;
case 5:
case "KIND_UNKNOWN":
return InspectPoliciesResponse_Constant_Kind.KIND_UNKNOWN;
default:
throw new globalThis.Error(
"Unrecognized enum value " +
object +
" for enum InspectPoliciesResponse_Constant_Kind",
);
}
}
export function inspectPoliciesResponse_Constant_KindToJSON(
object: InspectPoliciesResponse_Constant_Kind,
): string {
switch (object) {
case InspectPoliciesResponse_Constant_Kind.KIND_UNSPECIFIED:
return "KIND_UNSPECIFIED";
case InspectPoliciesResponse_Constant_Kind.KIND_EXPORTED:
return "KIND_EXPORTED";
case InspectPoliciesResponse_Constant_Kind.KIND_IMPORTED:
return "KIND_IMPORTED";
case InspectPoliciesResponse_Constant_Kind.KIND_LOCAL:
return "KIND_LOCAL";
case InspectPoliciesResponse_Constant_Kind.KIND_UNDEFINED:
return "KIND_UNDEFINED";
case InspectPoliciesResponse_Constant_Kind.KIND_UNKNOWN:
return "KIND_UNKNOWN";
default:
throw new globalThis.Error(
"Unrecognized enum value " +
object +
" for enum InspectPoliciesResponse_Constant_Kind",
);
}
}
export interface InspectPoliciesResponse_Variable {
name: string;
value: string;
kind: InspectPoliciesResponse_Variable_Kind;
source: string;
used: boolean;
}
export enum InspectPoliciesResponse_Variable_Kind {
KIND_UNSPECIFIED = 0,
KIND_EXPORTED = 1,
KIND_IMPORTED = 2,
KIND_LOCAL = 3,
KIND_UNDEFINED = 4,
KIND_UNKNOWN = 5,
}
export function inspectPoliciesResponse_Variable_KindFromJSON(
object: any,
): InspectPoliciesResponse_Variable_Kind {
switch (object) {
case 0:
case "KIND_UNSPECIFIED":
return InspectPoliciesResponse_Variable_Kind.KIND_UNSPECIFIED;
case 1:
case "KIND_EXPORTED":
return InspectPoliciesResponse_Variable_Kind.KIND_EXPORTED;
case 2:
case "KIND_IMPORTED":
return InspectPoliciesResponse_Variable_Kind.KIND_IMPORTED;
case 3:
case "KIND_LOCAL":
return InspectPoliciesResponse_Variable_Kind.KIND_LOCAL;
case 4:
case "KIND_UNDEFINED":
return InspectPoliciesResponse_Variable_Kind.KIND_UNDEFINED;
case 5:
case "KIND_UNKNOWN":
return InspectPoliciesResponse_Variable_Kind.KIND_UNKNOWN;
default:
throw new globalThis.Error(
"Unrecognized enum value " +
object +
" for enum InspectPoliciesResponse_Variable_Kind",
);
}
}
export function inspectPoliciesResponse_Variable_KindToJSON(
object: InspectPoliciesResponse_Variable_Kind,
): string {
switch (object) {
case InspectPoliciesResponse_Variable_Kind.KIND_UNSPECIFIED:
return "KIND_UNSPECIFIED";
case InspectPoliciesResponse_Variable_Kind.KIND_EXPORTED:
return "KIND_EXPORTED";
case InspectPoliciesResponse_Variable_Kind.KIND_IMPORTED:
return "KIND_IMPORTED";
case InspectPoliciesResponse_Variable_Kind.KIND_LOCAL:
return "KIND_LOCAL";
case InspectPoliciesResponse_Variable_Kind.KIND_UNDEFINED:
return "KIND_UNDEFINED";
case InspectPoliciesResponse_Variable_Kind.KIND_UNKNOWN:
return "KIND_UNKNOWN";
default:
throw new globalThis.Error(
"Unrecognized enum value " +
object +
" for enum InspectPoliciesResponse_Variable_Kind",
);
}
}
export interface InspectPoliciesResponse_Result {
actions: string[];
variables: InspectPoliciesResponse_Variable[];
policyId: string;
derivedRoles: InspectPoliciesResponse_DerivedRole[];
attributes: InspectPoliciesResponse_Attribute[];
constants: InspectPoliciesResponse_Constant[];
}
export interface InspectPoliciesResponse_ResultsEntry {
key: string;
value: InspectPoliciesResponse_Result | undefined;
}
export interface AddOrUpdateSchemaResponse {}
export interface ListSchemasResponse {
schemaIds: string[];
}
export interface GetSchemaResponse {
schemas: Schema[];
}
export interface DeleteSchemaResponse {
deletedSchemas: number;
}
export interface ReloadStoreResponse {}
export const PlanResourcesResponse: MessageFns<PlanResourcesResponse> = {
fromJSON(object: any): PlanResourcesResponse {
return {
requestId: isSet(object.requestId)
? globalThis.String(object.requestId)
: "",
action: isSet(object.action) ? globalThis.String(object.action) : "",
resourceKind: isSet(object.resourceKind)
? globalThis.String(object.resourceKind)
: "",
policyVersion: isSet(object.policyVersion)
? globalThis.String(object.policyVersion)
: "",
filter: isSet(object.filter)
? PlanResourcesFilter.fromJSON(object.filter)
: undefined,
meta: isSet(object.meta)
? PlanResourcesResponse_Meta.fromJSON(object.meta)
: undefined,
validationErrors: globalThis.Array.isArray(object?.validationErrors)
? object.validationErrors.map((e: any) => ValidationError.fromJSON(e))
: [],
cerbosCallId: isSet(object.cerbosCallId)
? globalThis.String(object.cerbosCallId)
: "",
};
},
toJSON(message: PlanResourcesResponse): unknown {
const obj: any = {};
if (message.requestId !== "") {
obj.requestId = message.requestId;
}
if (message.action !== "") {
obj.action = message.action;
}
if (message.resourceKind !== "") {
obj.resourceKind = message.resourceKind;
}
if (message.policyVersion !== "") {
obj.policyVersion = message.policyVersion;
}
if (message.filter !== undefined) {
obj.filter = PlanResourcesFilter.toJSON(message.filter);
}
if (message.meta !== undefined) {
obj.meta = PlanResourcesResponse_Meta.toJSON(message.meta);
}
if (message.validationErrors?.length) {
obj.validationErrors = message.validationErrors.map((e) =>
ValidationError.toJSON(e),
);
}
if (message.cerbosCallId !== "") {
obj.cerbosCallId = message.cerbosCallId;
}
return obj;
},
};
export const PlanResourcesResponse_Meta: MessageFns<PlanResourcesResponse_Meta> =
{
fromJSON(object: any): PlanResourcesResponse_Meta {
return {
filterDebug: isSet(object.filterDebug)
? globalThis.String(object.filterDebug)
: "",
matchedScope: isSet(object.matchedScope)
? globalThis.String(object.matchedScope)
: "",
};
},
toJSON(message: PlanResourcesResponse_Meta): unknown {
const obj: any = {};
if (message.filterDebug !== "") {
obj.filterDebug = message.filterDebug;
}
if (message.matchedScope !== "") {
obj.matchedScope = message.matchedScope;
}
return obj;
},
};
export const CheckResourceSetResponse: MessageFns<CheckResourceSetResponse> = {
fromJSON(object: any): CheckResourceSetResponse {
return {
requestId: isSet(object.requestId)
? globalThis.String(object.requestId)
: "",
resourceInstances: isObject(object.resourceInstances)
? Object.entries(object.resourceInstances).reduce<{
[key: string]: CheckResourceSetResponse_ActionEffectMap;
}>((acc, [key, value]) => {
acc[key] = CheckResourceSetResponse_ActionEffectMap.fromJSON(value);
return acc;
}, {})
: {},
meta: isSet(object.meta)
? CheckResourceSetResponse_Meta.fromJSON(object.meta)
: undefined,
};
},
toJSON(message: CheckResourceSetResponse): unknown {
const obj: any = {};
if (message.requestId !== "") {
obj.requestId = message.requestId;
}
if (message.resourceInstances) {
const entries = Object.entries(message.resourceInstances);
if (entries.length > 0) {
obj.resourceInstances = {};
entries.forEach(([k, v]) => {
obj.resourceInstances[k] =
CheckResourceSetResponse_ActionEffectMap.toJSON(v);
});
}
}
if (message.meta !== undefined) {
obj.meta = CheckResourceSetResponse_Meta.toJSON(message.meta);
}
return obj;
},
};
export const CheckResourceSetResponse_ActionEffectMap: MessageFns<CheckResourceSetResponse_ActionEffectMap> =
{
fromJSON(object: any): CheckResourceSetResponse_ActionEffectMap {
return {
actions: isObject(object.actions)
? Object.entries(object.actions).reduce<{ [key: string]: Effect }>(
(acc, [key, value]) => {
acc[key] = effectFromJSON(value);
return acc;
},
{},
)
: {},
validationErrors: globalThis.Array.isArray(object?.validationErrors)
? object.validationErrors.map((e: any) => ValidationError.fromJSON(e))
: [],
};
},
toJSON(message: CheckResourceSetResponse_ActionEffectMap): unknown {
const obj: any = {};
if (message.actions) {
const entries = Object.entries(message.actions);
if (entries.length > 0) {
obj.actions = {};
entries.forEach(([k, v]) => {
obj.actions[k] = effectToJSON(v);
});
}
}
if (message.validationErrors?.length) {
obj.validationErrors = message.validationErrors.map((e) =>
ValidationError.toJSON(e),
);
}
return obj;
},
};
export const CheckResourceSetResponse_ActionEffectMap_ActionsEntry: MessageFns<CheckResourceSetResponse_ActionEffectMap_ActionsEntry> =
{
fromJSON(
object: any,
): CheckResourceSetResponse_ActionEffectMap_ActionsEntry {
return {
key: isSet(object.key) ? globalThis.String(object.key) : "",
value: isSet(object.value) ? effectFromJSON(object.value) : 0,
};
},
toJSON(
message: CheckResourceSetResponse_ActionEffectMap_ActionsEntry,
): unknown {
const obj: any = {};
if (message.key !== "") {
obj.key = message.key;
}
if (message.value !== 0) {
obj.value = effectToJSON(message.value);
}
return obj;
},
};
export const CheckResourceSetResponse_Meta: MessageFns<CheckResourceSetResponse_Meta> =
{
fromJSON(object: any): CheckResourceSetResponse_Meta {
return {
resourceInstances: isObject(object.resourceInstances)
? Object.entries(object.resourceInstances).reduce<{
[key: string]: CheckResourceSetResponse_Meta_ActionMeta;
}>((acc, [key, value]) => {
acc[key] =
CheckResourceSetResponse_Meta_ActionMeta.fromJSON(value);
return acc;
}, {})
: {},
};
},
toJSON(message: CheckResourceSetResponse_Meta): unknown {
const obj: any = {};
if (message.resourceInstances) {
const entries = Object.entries(message.resourceInstances);
if (entries.length > 0) {
obj.resourceInstances = {};
entries.forEach(([k, v]) => {
obj.resourceInstances[k] =
CheckResourceSetResponse_Meta_ActionMeta.toJSON(v);
});
}
}
return obj;
},
};
export const CheckResourceSetResponse_Meta_EffectMeta: MessageFns<CheckResourceSetResponse_Meta_EffectMeta> =
{
fromJSON(object: any): CheckResourceSetResponse_Meta_EffectMeta {
return {
matchedPolicy: isSet(object.matchedPolicy)
? globalThis.String(object.matchedPolicy)
: "",
matchedScope: isSet(object.matchedScope)
? globalThis.String(object.matchedScope)
: "",
};
},
toJSON(message: CheckResourceSetResponse_Meta_EffectMeta): unknown {
const obj: any = {};
if (message.matchedPolicy !== "") {
obj.matchedPolicy = message.matchedPolicy;
}
if (message.matchedScope !== "") {
obj.matchedScope = message.matchedScope;
}
return obj;
},
};
export const CheckResourceSetResponse_Meta_ActionMeta: MessageFns<CheckResourceSetResponse_Meta_ActionMeta> =
{
fromJSON(object: any): CheckResourceSetResponse_Meta_ActionMeta {
return {
actions: isObject(object.actions)
? Object.entries(object.actions).reduce<{
[key: string]: CheckResourceSetResponse_Meta_EffectMeta;
}>((acc, [key, value]) => {
acc[key] =
CheckResourceSetResponse_Meta_EffectMeta.fromJSON(value);
return acc;
}, {})
: {},
effectiveDerivedRoles: globalThis.Array.isArray(
object?.effectiveDerivedRoles,
)
? object.effectiveDerivedRoles.map((e: any) => globalThis.String(e))
: [],
};
},
toJSON(message: CheckResourceSetResponse_Meta_ActionMeta): unknown {
const obj: any = {};
if (message.actions) {
const entries = Object.entries(message.actions);
if (entries.length > 0) {
obj.actions = {};
entries.forEach(([k, v]) => {
obj.actions[k] = CheckResourceSetResponse_Meta_EffectMeta.toJSON(v);
});
}
}
if (message.effectiveDerivedRoles?.length) {
obj.effectiveDerivedRoles = message.effectiveDerivedRoles;
}
return obj;
},
};
export const CheckResourceSetResponse_Meta_ActionMeta_ActionsEntry: MessageFns<CheckResourceSetResponse_Meta_ActionMeta_ActionsEntry> =
{
fromJSON(
object: any,
): CheckResourceSetResponse_Meta_ActionMeta_ActionsEntry {
return {
key: isSet(object.key) ? globalThis.String(object.key) : "",
value: isSet(object.value)
? CheckResourceSetResponse_Meta_EffectMeta.fromJSON(object.value)
: undefined,
};
},
toJSON(
message: CheckResourceSetResponse_Meta_ActionMeta_ActionsEntry,
): unknown {
const obj: any = {};
if (message.key !== "") {
obj.key = message.key;
}
if (message.value !== undefined) {
obj.value = CheckResourceSetResponse_Meta_EffectMeta.toJSON(
message.value,
);
}
return obj;
},
};
export const CheckResourceSetResponse_Meta_ResourceInstancesEntry: MessageFns<CheckResourceSetResponse_Meta_ResourceInstancesEntry> =
{
fromJSON(
object: any,
): CheckResourceSetResponse_Meta_ResourceInstancesEntry {
return {
key: isSet(object.key) ? globalThis.String(object.key) : "",
value: isSet(object.value)
? CheckResourceSetResponse_Meta_ActionMeta.fromJSON(object.value)
: undefined,
};
},
toJSON(
message: CheckResourceSetResponse_Meta_ResourceInstancesEntry,
): unknown {
const obj: any = {};
if (message.key !== "") {
obj.key = message.key;
}
if (message.value !== undefined) {
obj.value = CheckResourceSetResponse_Meta_ActionMeta.toJSON(
message.value,
);
}
return obj;
},
};
export const CheckResourceSetResponse_ResourceInstancesEntry: MessageFns<CheckResourceSetResponse_ResourceInstancesEntry> =
{
fromJSON(object: any): CheckResourceSetResponse_ResourceInstancesEntry {
return {
key: isSet(object.key) ? globalThis.String(object.key) : "",
value: isSet(object.value)
? CheckResourceSetResponse_ActionEffectMap.fromJSON(object.value)
: undefined,
};
},
toJSON(message: CheckResourceSetResponse_ResourceInstancesEntry): unknown {
const obj: any = {};
if (message.key !== "") {
obj.key = message.key;
}
if (message.value !== undefined) {
obj.value = CheckResourceSetResponse_ActionEffectMap.toJSON(
message.value,
);
}
return obj;
},
};
export const CheckResourceBatchResponse: MessageFns<CheckResourceBatchResponse> =
{
fromJSON(object: any): CheckResourceBatchResponse {
return {
requestId: isSet(object.requestId)
? globalThis.String(object.requestId)
: "",
results: globalThis.Array.isArray(object?.results)
? object.results.map((e: any) =>
CheckResourceBatchResponse_ActionEffectMap.fromJSON(e),
)
: [],
};
},
toJSON(message: CheckResourceBatchResponse): unknown {
const obj: any = {};
if (message.requestId !== "") {
obj.requestId = message.requestId;
}
if (message.results?.length) {
obj.results = message.results.map((e) =>
CheckResourceBatchResponse_ActionEffectMap.toJSON(e),
);
}
return obj;
},
};
export const CheckResourceBatchResponse_ActionEffectMap: MessageFns<CheckResourceBatchResponse_ActionEffectMap> =
{
fromJSON(object: any): CheckResourceBatchResponse_ActionEffectMap {
return {
resourceId: isSet(object.resourceId)
? globalThis.String(object.resourceId)
: "",
actions: isObject(object.actions)
? Object.entries(object.actions).reduce<{ [key: string]: Effect }>(
(acc, [key, value]) => {
acc[key] = effectFromJSON(value);
return acc;
},
{},
)
: {},
validationErrors: globalThis.Array.isArray(object?.validationErrors)
? object.validationErrors.map((e: any) => ValidationError.fromJSON(e))
: [],
};
},
toJSON(message: CheckResourceBatchResponse_ActionEffectMap): unknown {
const obj: any = {};
if (message.resourceId !== "") {
obj.resourceId = message.resourceId;
}
if (message.actions) {
const entries = Object.entries(message.actions);
if (entries.length > 0) {
obj.actions = {};
entries.forEach(([k, v]) => {
obj.actions[k] = effectToJSON(v);
});
}
}
if (message.validationErrors?.length) {
obj.validationErrors = message.validationErrors.map((e) =>
ValidationError.toJSON(e),
);
}
return obj;
},
};
export const CheckResourceBatchResponse_ActionEffectMap_ActionsEntry: MessageFns<CheckResourceBatchResponse_ActionEffectMap_ActionsEntry> =
{
fromJSON(
object: any,
): CheckResourceBatchResponse_ActionEffectMap_ActionsEntry {
return {
key: isSet(object.key) ? globalThis.String(object.key) : "",
value: isSet(object.value) ? effectFromJSON(object.value) : 0,
};
},
toJSON(
message: CheckResourceBatchResponse_ActionEffectMap_ActionsEntry,
): unknown {
const obj: any = {};
if (message.key !== "") {
obj.key = message.key;
}
if (message.value !== 0) {
obj.value = effectToJSON(message.value);
}
return obj;
},
};
export const CheckResourcesResponse: MessageFns<CheckResourcesResponse> = {
fromJSON(object: any): CheckResourcesResponse {
return {
requestId: isSet(object.requestId)
? globalThis.String(object.requestId)
: "",
results: globalThis.Array.isArray(object?.results)
? object.results.map((e: any) =>
CheckResourcesResponse_ResultEntry.fromJSON(e),
)
: [],
cerbosCallId: isSet(object.cerbosCallId)
? globalThis.String(object.cerbosCallId)
: "",
};
},
toJSON(message: CheckResourcesResponse): unknown {
const obj: any = {};
if (message.requestId !== "") {
obj.requestId = message.requestId;
}
if (message.results?.length) {
obj.results = message.results.map((e) =>
CheckResourcesResponse_ResultEntry.toJSON(e),
);
}
if (message.cerbosCallId !== "") {
obj.cerbosCallId = message.cerbosCallId;
}
return obj;
},
};
export const CheckResourcesResponse_ResultEntry: MessageFns<CheckResourcesResponse_ResultEntry> =
{
fromJSON(object: any): CheckResourcesResponse_ResultEntry {
return {
resource: isSet(object.resource)
? CheckResourcesResponse_ResultEntry_Resource.fromJSON(
object.resource,
)
: undefined,
actions: isObject(object.actions)
? Object.entries(object.actions).reduce<{ [key: string]: Effect }>(
(acc, [key, value]) => {
acc[key] = effectFromJSON(value);
return acc;
},
{},
)
: {},
validationErrors: globalThis.Array.isArray(object?.validationErrors)
? object.validationErrors.map((e: any) => ValidationError.fromJSON(e))
: [],
meta: isSet(object.meta)
? CheckResourcesResponse_ResultEntry_Meta.fromJSON(object.meta)
: undefined,
outputs: globalThis.Array.isArray(object?.outputs)
? object.outputs.map((e: any) => OutputEntry.fromJSON(e))
: [],
};
},
toJSON(message: CheckResourcesResponse_ResultEntry): unknown {
const obj: any = {};
if (message.resource !== undefined) {
obj.resource = CheckResourcesResponse_ResultEntry_Resource.toJSON(
message.resource,
);
}
if (message.actions) {
const entries = Object.entries(message.actions);
if (entries.length > 0) {
obj.actions = {};
entries.forEach(([k, v]) => {
obj.actions[k] = effectToJSON(v);
});
}
}
if (message.validationErrors?.length) {
obj.validationErrors = message.validationErrors.map((e) =>
ValidationError.toJSON(e),
);
}
if (message.meta !== undefined) {
obj.meta = CheckResourcesResponse_ResultEntry_Meta.toJSON(message.meta);
}
if (message.outputs?.length) {
obj.outputs = message.outputs.map((e) => OutputEntry.toJSON(e));
}
return obj;
},
};
export const CheckResourcesResponse_ResultEntry_Resource: MessageFns<CheckResourcesResponse_ResultEntry_Resource> =
{
fromJSON(object: any): CheckResourcesResponse_ResultEntry_Resource {
return {
id: isSet(object.id) ? globalThis.String(object.id) : "",
kind: isSet(object.kind) ? globalThis.String(object.kind) : "",
policyVersion: isSet(object.policyVersion)
? globalThis.String(object.policyVersion)
: "",
scope: isSet(object.scope) ? globalThis.String(object.scope) : "",
};
},
toJSON(message: CheckResourcesResponse_ResultEntry_Resource): unknown {
const obj: any = {};
if (message.id !== "") {
obj.id = message.id;
}
if (message.kind !== "") {
obj.kind = message.kind;
}
if (message.policyVersion !== "") {
obj.policyVersion = message.policyVersion;
}
if (message.scope !== "") {
obj.scope = message.scope;
}
return obj;
},
};
export const CheckResourcesResponse_ResultEntry_Meta: MessageFns<CheckResourcesResponse_ResultEntry_Meta> =
{
fromJSON(object: any): CheckResourcesResponse_ResultEntry_Meta {
return {
actions: isObject(object.actions)
? Object.entries(object.actions).reduce<{
[key: string]: CheckResourcesResponse_ResultEntry_Meta_EffectMeta;
}>((acc, [key, value]) => {
acc[key] =
CheckResourcesResponse_ResultEntry_Meta_EffectMeta.fromJSON(
value,
);
return acc;
}, {})
: {},
effectiveDerivedRoles: globalThis.Array.isArray(
object?.effectiveDerivedRoles,
)
? object.effectiveDerivedRoles.map((e: any) => globalThis.String(e))
: [],
};
},
toJSON(message: CheckResourcesResponse_ResultEntry_Meta): unknown {
const obj: any = {};
if (message.actions) {
const entries = Object.entries(message.actions);
if (entries.length > 0) {
obj.actions = {};
entries.forEach(([k, v]) => {
obj.actions[k] =
CheckResourcesResponse_ResultEntry_Meta_EffectMeta.toJSON(v);
});
}
}
if (message.effectiveDerivedRoles?.length) {
obj.effectiveDerivedRoles = message.effectiveDerivedRoles;
}
return obj;
},
};
export const CheckResourcesResponse_ResultEntry_Meta_EffectMeta: MessageFns<CheckResourcesResponse_ResultEntry_Meta_EffectMeta> =
{
fromJSON(object: any): CheckResourcesResponse_ResultEntry_Meta_EffectMeta {
return {
matchedPolicy: isSet(object.matchedPolicy)
? globalThis.String(object.matchedPolicy)
: "",
matchedScope: isSet(object.matchedScope)
? globalThis.String(object.matchedScope)
: "",
};
},
toJSON(
message: CheckResourcesResponse_ResultEntry_Meta_EffectMeta,
): unknown {
const obj: any = {};
if (message.matchedPolicy !== "") {
obj.matchedPolicy = message.matchedPolicy;
}
if (message.matchedScope !== "") {
obj.matchedScope = message.matchedScope;
}
return obj;
},
};
export const CheckResourcesResponse_ResultEntry_Meta_ActionsEntry: MessageFns<CheckResourcesResponse_ResultEntry_Meta_ActionsEntry> =
{
fromJSON(
object: any,
): CheckResourcesResponse_ResultEntry_Meta_ActionsEntry {
return {
key: isSet(object.key) ? globalThis.String(object.key) : "",
value: isSet(object.value)
? CheckResourcesResponse_ResultEntry_Meta_EffectMeta.fromJSON(
object.value,
)
: undefined,
};
},
toJSON(
message: CheckResourcesResponse_ResultEntry_Meta_ActionsEntry,
): unknown {
const obj: any = {};
if (message.key !== "") {
obj.key = message.key;
}
if (message.value !== undefined) {
obj.value = CheckResourcesResponse_ResultEntry_Meta_EffectMeta.toJSON(
message.value,
);
}
return obj;
},
};
export const CheckResourcesResponse_ResultEntry_ActionsEntry: MessageFns<CheckResourcesResponse_ResultEntry_ActionsEntry> =
{
fromJSON(object: any): CheckResourcesResponse_ResultEntry_ActionsEntry {
return {
key: isSet(object.key) ? globalThis.String(object.key) : "",
value: isSet(object.value) ? effectFromJSON(object.value) : 0,
};
},
toJSON(message: CheckResourcesResponse_ResultEntry_ActionsEntry): unknown {
const obj: any = {};
if (message.key !== "") {
obj.key = message.key;
}
if (message.value !== 0) {
obj.value = effectToJSON(message.value);
}
return obj;
},
};
export const AddOrUpdatePolicyResponse: MessageFns<AddOrUpdatePolicyResponse> =
{
fromJSON(object: any): AddOrUpdatePolicyResponse {
return {
success: isSet(object.success)
? Empty.fromJSON(object.success)
: undefined,
};
},
toJSON(message: AddOrUpdatePolicyResponse): unknown {
const obj: any = {};
if (message.success !== undefined) {
obj.success = Empty.toJSON(message.success);
}
return obj;
},
};
export const ListAuditLogEntriesResponse: MessageFns<ListAuditLogEntriesResponse> =
{
fromJSON(object: any): ListAuditLogEntriesResponse {
return {
entry: isSet(object.accessLogEntry)
? {
$case: "accessLogEntry",
accessLogEntry: AccessLogEntry.fromJSON(object.accessLogEntry),
}
: isSet(object.decisionLogEntry)
? {
$case: "decisionLogEntry",
decisionLogEntry: DecisionLogEntry.fromJSON(
object.decisionLogEntry,
),
}
: undefined,
};
},
toJSON(message: ListAuditLogEntriesResponse): unknown {
const obj: any = {};
if (message.entry?.$case === "accessLogEntry") {
obj.accessLogEntry = AccessLogEntry.toJSON(
message.entry.accessLogEntry,
);
} else if (message.entry?.$case === "decisionLogEntry") {
obj.decisionLogEntry = DecisionLogEntry.toJSON(
message.entry.decisionLogEntry,
);
}
return obj;
},
};
export const ServerInfoResponse: MessageFns<ServerInfoResponse> = {
fromJSON(object: any): ServerInfoResponse {
return {
version: isSet(object.version) ? globalThis.String(object.version) : "",
commit: isSet(object.commit) ? globalThis.String(object.commit) : "",
buildDate: isSet(object.buildDate)
? globalThis.String(object.buildDate)
: "",
};
},
toJSON(message: ServerInfoResponse): unknown {
const obj: any = {};
if (message.version !== "") {
obj.version = message.version;
}
if (message.commit !== "") {
obj.commit = message.commit;
}
if (message.buildDate !== "") {
obj.buildDate = message.buildDate;
}
return obj;
},
};
export const ListPoliciesResponse: MessageFns<ListPoliciesResponse> = {
fromJSON(object: any): ListPoliciesResponse {
return {
policyIds: globalThis.Array.isArray(object?.policyIds)
? object.policyIds.map((e: any) => globalThis.String(e))
: [],
};
},
toJSON(message: ListPoliciesResponse): unknown {
const obj: any = {};
if (message.policyIds?.length) {
obj.policyIds = message.policyIds;
}
return obj;
},
};
export const GetPolicyResponse: MessageFns<GetPolicyResponse> = {
fromJSON(object: any): GetPolicyResponse {
return {
policies: globalThis.Array.isArray(object?.policies)
? object.policies.map((e: any) => Policy.fromJSON(e))
: [],
};
},
toJSON(message: GetPolicyResponse): unknown {
const obj: any = {};
if (message.policies?.length) {
obj.policies = message.policies.map((e) => Policy.toJSON(e));
}
return obj;
},
};
export const DisablePolicyResponse: MessageFns<DisablePolicyResponse> = {
fromJSON(object: any): DisablePolicyResponse {
return {
disabledPolicies: isSet(object.disabledPolicies)
? globalThis.Number(object.disabledPolicies)
: 0,
};
},
toJSON(message: DisablePolicyResponse): unknown {
const obj: any = {};
if (message.disabledPolicies !== 0) {
obj.disabledPolicies = Math.round(message.disabledPolicies);
}
return obj;
},
};
export const EnablePolicyResponse: MessageFns<EnablePolicyResponse> = {
fromJSON(object: any): EnablePolicyResponse {
return {
enabledPolicies: isSet(object.enabledPolicies)
? globalThis.Number(object.enabledPolicies)
: 0,
};
},
toJSON(message: EnablePolicyResponse): unknown {
const obj: any = {};
if (message.enabledPolicies !== 0) {
obj.enabledPolicies = Math.round(message.enabledPolicies);
}
return obj;
},
};
export const InspectPoliciesResponse: MessageFns<InspectPoliciesResponse> = {
fromJSON(object: any): InspectPoliciesResponse {
return {
results: isObject(object.results)
? Object.entries(object.results).reduce<{
[key: string]: InspectPoliciesResponse_Result;
}>((acc, [key, value]) => {
acc[key] = InspectPoliciesResponse_Result.fromJSON(value);
return acc;
}, {})
: {},
};
},
toJSON(message: InspectPoliciesResponse): unknown {
const obj: any = {};
if (message.results) {
const entries = Object.entries(message.results);
if (entries.length > 0) {
obj.results = {};
entries.forEach(([k, v]) => {
obj.results[k] = InspectPoliciesResponse_Result.toJSON(v);
});
}
}
return obj;
},
};
export const InspectPoliciesResponse_Attribute: MessageFns<InspectPoliciesResponse_Attribute> =
{
fromJSON(object: any): InspectPoliciesResponse_Attribute {
return {
kind: isSet(object.kind)
? inspectPoliciesResponse_Attribute_KindFromJSON(object.kind)
: 0,
name: isSet(object.name) ? globalThis.String(object.name) : "",
};
},
toJSON(message: InspectPoliciesResponse_Attribute): unknown {
const obj: any = {};
if (message.kind !== 0) {
obj.kind = inspectPoliciesResponse_Attribute_KindToJSON(message.kind);
}
if (message.name !== "") {
obj.name = message.name;
}
return obj;
},
};
export const InspectPoliciesResponse_DerivedRole: MessageFns<InspectPoliciesResponse_DerivedRole> =
{
fromJSON(object: any): InspectPoliciesResponse_DerivedRole {
return {
name: isSet(object.name) ? globalThis.String(object.name) : "",
kind: isSet(object.kind)
? inspectPoliciesResponse_DerivedRole_KindFromJSON(object.kind)
: 0,
source: isSet(object.source) ? globalThis.String(object.source) : "",
};
},
toJSON(message: InspectPoliciesResponse_DerivedRole): unknown {
const obj: any = {};
if (message.name !== "") {
obj.name = message.name;
}
if (message.kind !== 0) {
obj.kind = inspectPoliciesResponse_DerivedRole_KindToJSON(message.kind);
}
if (message.source !== "") {
obj.source = message.source;
}
return obj;
},
};
export const InspectPoliciesResponse_Constant: MessageFns<InspectPoliciesResponse_Constant> =
{
fromJSON(object: any): InspectPoliciesResponse_Constant {
return {
name: isSet(object.name) ? globalThis.String(object.name) : "",
value: isSet(object?.value) ? object.value : undefined,
kind: isSet(object.kind)
? inspectPoliciesResponse_Constant_KindFromJSON(object.kind)
: 0,
source: isSet(object.source) ? globalThis.String(object.source) : "",
used: isSet(object.used) ? globalThis.Boolean(object.used) : false,
};
},
toJSON(message: InspectPoliciesResponse_Constant): unknown {
const obj: any = {};
if (message.name !== "") {
obj.name = message.name;
}
if (message.value !== undefined) {
obj.value = message.value;
}
if (message.kind !== 0) {
obj.kind = inspectPoliciesResponse_Constant_KindToJSON(message.kind);
}
if (message.source !== "") {
obj.source = message.source;
}
if (message.used !== false) {
obj.used = message.used;
}
return obj;
},
};
export const InspectPoliciesResponse_Variable: MessageFns<InspectPoliciesResponse_Variable> =
{
fromJSON(object: any): InspectPoliciesResponse_Variable {
return {
name: isSet(object.name) ? globalThis.String(object.name) : "",
value: isSet(object.value) ? globalThis.String(object.value) : "",
kind: isSet(object.kind)
? inspectPoliciesResponse_Variable_KindFromJSON(object.kind)
: 0,
source: isSet(object.source) ? globalThis.String(object.source) : "",
used: isSet(object.used) ? globalThis.Boolean(object.used) : false,
};
},
toJSON(message: InspectPoliciesResponse_Variable): unknown {
const obj: any = {};
if (message.name !== "") {
obj.name = message.name;
}
if (message.value !== "") {
obj.value = message.value;
}
if (message.kind !== 0) {
obj.kind = inspectPoliciesResponse_Variable_KindToJSON(message.kind);
}
if (message.source !== "") {
obj.source = message.source;
}
if (message.used !== false) {
obj.used = message.used;
}
return obj;
},
};
export const InspectPoliciesResponse_Result: MessageFns<InspectPoliciesResponse_Result> =
{
fromJSON(object: any): InspectPoliciesResponse_Result {
return {
actions: globalThis.Array.isArray(object?.actions)
? object.actions.map((e: any) => globalThis.String(e))
: [],
variables: globalThis.Array.isArray(object?.variables)
? object.variables.map((e: any) =>
InspectPoliciesResponse_Variable.fromJSON(e),
)
: [],
policyId: isSet(object.policyId)
? globalThis.String(object.policyId)
: "",
derivedRoles: globalThis.Array.isArray(object?.derivedRoles)
? object.derivedRoles.map((e: any) =>
InspectPoliciesResponse_DerivedRole.fromJSON(e),
)
: [],
attributes: globalThis.Array.isArray(object?.attributes)
? object.attributes.map((e: any) =>
InspectPoliciesResponse_Attribute.fromJSON(e),
)
: [],
constants: globalThis.Array.isArray(object?.constants)
? object.constants.map((e: any) =>
InspectPoliciesResponse_Constant.fromJSON(e),
)
: [],
};
},
toJSON(message: InspectPoliciesResponse_Result): unknown {
const obj: any = {};
if (message.actions?.length) {
obj.actions = message.actions;
}
if (message.variables?.length) {
obj.variables = message.variables.map((e) =>
InspectPoliciesResponse_Variable.toJSON(e),
);
}
if (message.policyId !== "") {
obj.policyId = message.policyId;
}
if (message.derivedRoles?.length) {
obj.derivedRoles = message.derivedRoles.map((e) =>
InspectPoliciesResponse_DerivedRole.toJSON(e),
);
}
if (message.attributes?.length) {
obj.attributes = message.attributes.map((e) =>
InspectPoliciesResponse_Attribute.toJSON(e),
);
}
if (message.constants?.length) {
obj.constants = message.constants.map((e) =>
InspectPoliciesResponse_Constant.toJSON(e),
);
}
return obj;
},
};
export const InspectPoliciesResponse_ResultsEntry: MessageFns<InspectPoliciesResponse_ResultsEntry> =
{
fromJSON(object: any): InspectPoliciesResponse_ResultsEntry {
return {
key: isSet(object.key) ? globalThis.String(object.key) : "",
value: isSet(object.value)
? InspectPoliciesResponse_Result.fromJSON(object.value)
: undefined,
};
},
toJSON(message: InspectPoliciesResponse_ResultsEntry): unknown {
const obj: any = {};
if (message.key !== "") {
obj.key = message.key;
}
if (message.value !== undefined) {
obj.value = InspectPoliciesResponse_Result.toJSON(message.value);
}
return obj;
},
};
export const AddOrUpdateSchemaResponse: MessageFns<AddOrUpdateSchemaResponse> =
{
fromJSON(_: any): AddOrUpdateSchemaResponse {
return {};
},
toJSON(_: AddOrUpdateSchemaResponse): unknown {
const obj: any = {};
return obj;
},
};
export const ListSchemasResponse: MessageFns<ListSchemasResponse> = {
fromJSON(object: any): ListSchemasResponse {
return {
schemaIds: globalThis.Array.isArray(object?.schemaIds)
? object.schemaIds.map((e: any) => globalThis.String(e))
: [],
};
},
toJSON(message: ListSchemasResponse): unknown {
const obj: any = {};
if (message.schemaIds?.length) {
obj.schemaIds = message.schemaIds;
}
return obj;
},
};
export const GetSchemaResponse: MessageFns<GetSchemaResponse> = {
fromJSON(object: any): GetSchemaResponse {
return {
schemas: globalThis.Array.isArray(object?.schemas)
? object.schemas.map((e: any) => Schema.fromJSON(e))
: [],
};
},
toJSON(message: GetSchemaResponse): unknown {
const obj: any = {};
if (message.schemas?.length) {
obj.schemas = message.schemas.map((e) => Schema.toJSON(e));
}
return obj;
},
};
export const DeleteSchemaResponse: MessageFns<DeleteSchemaResponse> = {
fromJSON(object: any): DeleteSchemaResponse {
return {
deletedSchemas: isSet(object.deletedSchemas)
? globalThis.Number(object.deletedSchemas)
: 0,
};
},
toJSON(message: DeleteSchemaResponse): unknown {
const obj: any = {};
if (message.deletedSchemas !== 0) {
obj.deletedSchemas = Math.round(message.deletedSchemas);
}
return obj;
},
};
export const ReloadStoreResponse: MessageFns<ReloadStoreResponse> = {
fromJSON(_: any): ReloadStoreResponse {
return {};
},
toJSON(_: ReloadStoreResponse): unknown {
const obj: any = {};
return obj;
},
};
function isObject(value: any): boolean {
return typeof value === "object" && value !== null;
}
function isSet(value: any): boolean {
return value !== null && value !== undefined;
}
export interface MessageFns<T> {
fromJSON(object: any): T;
toJSON(message: T): unknown;
}