import { PlanResourcesInput_Resource, Principal, Resource } from "../../engine/v1/engine";
export declare const protobufPackage = "cerbos.request.v1";
export interface PlanResourcesRequest {
    requestId: string;
    action: string;
    actions: string[];
    principal: Principal | undefined;
    resource: PlanResourcesInput_Resource | undefined;
    auxData: AuxData | undefined;
    includeMeta: boolean;
}
export interface CheckResourceSetRequest {
    requestId: string;
    actions: string[];
    principal: Principal | undefined;
    resource: ResourceSet | undefined;
    includeMeta: boolean;
    auxData: AuxData | undefined;
}
export interface ResourceSet {
    kind: string;
    policyVersion: string;
    instances: {
        [key: string]: AttributesMap;
    };
    scope: string;
}
export interface ResourceSet_InstancesEntry {
    key: string;
    value: AttributesMap | undefined;
}
export interface AttributesMap {
    attr: {
        [key: string]: any | undefined;
    };
}
export interface AttributesMap_AttrEntry {
    key: string;
    value: any | undefined;
}
export interface CheckResourceBatchRequest {
    requestId: string;
    principal: Principal | undefined;
    resources: CheckResourceBatchRequest_BatchEntry[];
    auxData: AuxData | undefined;
}
export interface CheckResourceBatchRequest_BatchEntry {
    actions: string[];
    resource: Resource | undefined;
}
export interface CheckResourcesRequest {
    requestId: string;
    includeMeta: boolean;
    principal: Principal | undefined;
    resources: CheckResourcesRequest_ResourceEntry[];
    auxData: AuxData | undefined;
}
export interface CheckResourcesRequest_ResourceEntry {
    actions: string[];
    resource: Resource | undefined;
}
export interface AuxData {
    jwt: AuxData_JWT | undefined;
}
export interface AuxData_JWT {
    token: string;
    keySetId: string;
}
export interface ServerInfoRequest {
}
export declare const PlanResourcesRequest: MessageFns<PlanResourcesRequest>;
export declare const CheckResourceSetRequest: MessageFns<CheckResourceSetRequest>;
export declare const ResourceSet: MessageFns<ResourceSet>;
export declare const ResourceSet_InstancesEntry: MessageFns<ResourceSet_InstancesEntry>;
export declare const AttributesMap: MessageFns<AttributesMap>;
export declare const AttributesMap_AttrEntry: MessageFns<AttributesMap_AttrEntry>;
export declare const CheckResourceBatchRequest: MessageFns<CheckResourceBatchRequest>;
export declare const CheckResourceBatchRequest_BatchEntry: MessageFns<CheckResourceBatchRequest_BatchEntry>;
export declare const CheckResourcesRequest: MessageFns<CheckResourcesRequest>;
export declare const CheckResourcesRequest_ResourceEntry: MessageFns<CheckResourcesRequest_ResourceEntry>;
export declare const AuxData: MessageFns<AuxData>;
export declare const AuxData_JWT: MessageFns<AuxData_JWT>;
export declare const ServerInfoRequest: MessageFns<ServerInfoRequest>;
export interface MessageFns<T> {
    fromJSON(object: any): T;
    toJSON(message: T): unknown;
}
//# sourceMappingURL=request.d.ts.map