import * as z from "zod/v3";
import { ClosedEnum } from "../../types/enums.js";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
/**
 * Whether this statement should allow or deny actions on the resources.
 */
export declare const AiConfigsAccessDeniedReasonEffect: {
    readonly Allow: "allow";
    readonly Deny: "deny";
};
/**
 * Whether this statement should allow or deny actions on the resources.
 */
export type AiConfigsAccessDeniedReasonEffect = ClosedEnum<typeof AiConfigsAccessDeniedReasonEffect>;
export type AiConfigsAccessDeniedReason = {
    /**
     * Resource specifier strings
     */
    resources?: Array<string> | undefined;
    /**
     * Targeted resources are the resources NOT in this list. The <code>resources</code> and <code>notActions</code> fields must be empty to use this field.
     */
    notResources?: Array<string> | undefined;
    /**
     * Actions to perform on a resource
     */
    actions?: Array<string> | undefined;
    /**
     * Targeted actions are the actions NOT in this list. The <code>actions</code> and <code>notResources</code> fields must be empty to use this field.
     */
    notActions?: Array<string> | undefined;
    /**
     * Whether this statement should allow or deny actions on the resources.
     */
    effect: AiConfigsAccessDeniedReasonEffect;
    roleName?: string | undefined;
};
/** @internal */
export declare const AiConfigsAccessDeniedReasonEffect$inboundSchema: z.ZodNativeEnum<typeof AiConfigsAccessDeniedReasonEffect>;
/** @internal */
export declare const AiConfigsAccessDeniedReasonEffect$outboundSchema: z.ZodNativeEnum<typeof AiConfigsAccessDeniedReasonEffect>;
/** @internal */
export declare const AiConfigsAccessDeniedReason$inboundSchema: z.ZodType<AiConfigsAccessDeniedReason, z.ZodTypeDef, unknown>;
/** @internal */
export type AiConfigsAccessDeniedReason$Outbound = {
    resources?: Array<string> | undefined;
    notResources?: Array<string> | undefined;
    actions?: Array<string> | undefined;
    notActions?: Array<string> | undefined;
    effect: string;
    role_name?: string | undefined;
};
/** @internal */
export declare const AiConfigsAccessDeniedReason$outboundSchema: z.ZodType<AiConfigsAccessDeniedReason$Outbound, z.ZodTypeDef, AiConfigsAccessDeniedReason>;
export declare function aiConfigsAccessDeniedReasonToJSON(aiConfigsAccessDeniedReason: AiConfigsAccessDeniedReason): string;
export declare function aiConfigsAccessDeniedReasonFromJSON(jsonString: string): SafeParseResult<AiConfigsAccessDeniedReason, SDKValidationError>;
//# sourceMappingURL=aiconfigsaccessdeniedreason.d.ts.map