import { AddToResourcePolicyResult, PolicyDocument } from 'aws-cdk-lib/aws-iam';
import { EventBus } from 'aws-cdk-lib/aws-events';
import { IAccessSpec } from './k9policy';
export interface K9EventBusResourcePolicyProps {
    readonly bus: EventBus;
    readonly k9DesiredAccess: Array<IAccessSpec>;
}
export declare const SID_DENY_EVERYONE_ELSE = "DenyEveryoneElse";
/**
 * Generate an EventBridge Bus resource policy from the provided props.
 *
 * @param props specifying desired access
 * @return a PolicyDocument that can be attached to an EventBridge event bus
 */
export declare function makeResourcePolicy(props: K9EventBusResourcePolicyProps): PolicyDocument;
/**
 * Grant access to an event bus via resource policy using k9 IAccessSpec definitions.
 *
 * @param props specifying the event bus and desired access
 *
 * @return the results for adding each statement
 */
export declare function grantAccessViaResourcePolicy(props: K9EventBusResourcePolicyProps): AddToResourcePolicyResult[];
