import { cloudwatch, lambda } from "@pulumi/aws";
import * as pulumi from "@pulumi/pulumi";
import { Handler } from "./function";
import { EventSubscription } from "./subscription";
export interface CloudwatchEventArgs {
}
export interface CloudwatchEvent {
    account: string;
    region: string;
    detail: any;
    "detail-type": string;
    source: string;
    time: string;
    id: string;
    resources: string[];
}
export declare type CloudwatchEventHandler = Handler<CloudwatchEvent, void>;
export declare function onEvent(name: string, schedule: string, handler: CloudwatchEventHandler, args?: CloudwatchEventArgs, opts?: pulumi.ResourceOptions): CloudwatchEventSubscription;
export declare function onEvent(name: string, rule: cloudwatch.EventRule, handler: CloudwatchEventHandler, args?: CloudwatchEventArgs, opts?: pulumi.ResourceOptions): CloudwatchEventSubscription;
export declare class CloudwatchEventSubscription extends EventSubscription {
    readonly eventRule: cloudwatch.EventRule;
    readonly target: cloudwatch.EventTarget;
    constructor(name: string, scheduleOrRule: string | cloudwatch.EventRule, func: lambda.Function, args: CloudwatchEventArgs, opts?: pulumi.ResourceOptions);
}
