@cerbos/embedded
Version:
Client library for interacting with embedded Cerbos policy decision points generated by Cerbos Hub from server-side Node.js and browser-based applications
113 lines • 3.71 kB
TypeScript
import { Effect } from "../../effect/v1/effect";
import { ValidationError } from "../../schema/v1/schema";
export declare const protobufPackage = "cerbos.engine.v1";
export interface PlanResourcesInput {
}
export interface PlanResourcesInput_Resource {
kind: string;
attr: {
[key: string]: any | undefined;
};
policyVersion: string;
scope: string;
}
export interface PlanResourcesInput_Resource_AttrEntry {
key: string;
value: any | undefined;
}
export interface PlanResourcesFilter {
kind: PlanResourcesFilter_Kind;
condition: PlanResourcesFilter_Expression_Operand | undefined;
}
export declare enum PlanResourcesFilter_Kind {
KIND_UNSPECIFIED = 0,
KIND_ALWAYS_ALLOWED = 1,
KIND_ALWAYS_DENIED = 2,
KIND_CONDITIONAL = 3
}
export declare function planResourcesFilter_KindFromJSON(object: any): PlanResourcesFilter_Kind;
export declare function planResourcesFilter_KindToJSON(object: PlanResourcesFilter_Kind): string;
export interface PlanResourcesFilter_Expression {
operator: string;
operands: PlanResourcesFilter_Expression_Operand[];
}
export interface PlanResourcesFilter_Expression_Operand {
node?: {
$case: "value";
value: any | undefined;
} | {
$case: "expression";
expression: PlanResourcesFilter_Expression;
} | {
$case: "variable";
variable: string;
} | undefined;
}
export interface CheckOutput {
requestId: string;
resourceId: string;
actions: {
[key: string]: CheckOutput_ActionEffect;
};
effectiveDerivedRoles: string[];
validationErrors: ValidationError[];
outputs: OutputEntry[];
}
export interface CheckOutput_ActionEffect {
effect: Effect;
policy: string;
scope: string;
}
export interface CheckOutput_ActionsEntry {
key: string;
value: CheckOutput_ActionEffect | undefined;
}
export interface OutputEntry {
src: string;
val: any | undefined;
}
export interface Resource {
kind: string;
policyVersion: string;
id: string;
attr: {
[key: string]: any | undefined;
};
scope: string;
}
export interface Resource_AttrEntry {
key: string;
value: any | undefined;
}
export interface Principal {
id: string;
policyVersion: string;
roles: string[];
attr: {
[key: string]: any | undefined;
};
scope: string;
}
export interface Principal_AttrEntry {
key: string;
value: any | undefined;
}
export declare const PlanResourcesInput: MessageFns<PlanResourcesInput>;
export declare const PlanResourcesInput_Resource: MessageFns<PlanResourcesInput_Resource>;
export declare const PlanResourcesInput_Resource_AttrEntry: MessageFns<PlanResourcesInput_Resource_AttrEntry>;
export declare const PlanResourcesFilter: MessageFns<PlanResourcesFilter>;
export declare const PlanResourcesFilter_Expression: MessageFns<PlanResourcesFilter_Expression>;
export declare const PlanResourcesFilter_Expression_Operand: MessageFns<PlanResourcesFilter_Expression_Operand>;
export declare const CheckOutput: MessageFns<CheckOutput>;
export declare const CheckOutput_ActionEffect: MessageFns<CheckOutput_ActionEffect>;
export declare const CheckOutput_ActionsEntry: MessageFns<CheckOutput_ActionsEntry>;
export declare const OutputEntry: MessageFns<OutputEntry>;
export declare const Resource: MessageFns<Resource>;
export declare const Resource_AttrEntry: MessageFns<Resource_AttrEntry>;
export declare const Principal: MessageFns<Principal>;
export declare const Principal_AttrEntry: MessageFns<Principal_AttrEntry>;
export interface MessageFns<T> {
fromJSON(object: any): T;
toJSON(message: T): unknown;
}
//# sourceMappingURL=engine.d.ts.map