import * as z from "zod";
import { ClosedEnum } from "../types/enums.js";
import { PrincipalType } from "./principaltype.js";
/**
 * The user, group, or API key whose role assignments are being modified.
 */
export type Principal = {
    type: PrincipalType;
    id: string;
};
export declare const Principal$zodSchema: z.ZodType<Principal>;
/**
 * The operation to perform on the principal’s role assignments. `add` grants the specified roles; `remove` revokes them.
 */
export declare const Operation: {
    readonly Add: "add";
    readonly Remove: "remove";
};
/**
 * The operation to perform on the principal’s role assignments. `add` grants the specified roles; `remove` revokes them.
 */
export type Operation = ClosedEnum<typeof Operation>;
export declare const Operation$zodSchema: z.ZodEnum<{
    add: "add";
    remove: "remove";
}>;
export type AssignFolderRolesRequest = {
    principal: Principal;
    operation: Operation;
    roles: Array<string>;
};
export declare const AssignFolderRolesRequest$zodSchema: z.ZodType<AssignFolderRolesRequest>;
//# sourceMappingURL=assignfolderrolesrequest.d.ts.map