import { Duration } from 'aws-cdk-lib'; import { CronOptions, EventBus, Rule } from 'aws-cdk-lib/aws-events'; import { Queue } from 'aws-cdk-lib/aws-sqs'; import { Function } from 'aws-cdk-lib/aws-lambda'; import { DotStack } from '../constructs/Stack'; import { AddNodeFunctionOptions } from './node-function'; import { addParam } from './ssm'; export type CronExpression = string; export interface AddBusOptions { name?: string; scope: DotStack; } interface AddBusResult { bus: EventBus; param: ReturnType; } export interface AddCronOptions { cron?: CronOptions | CronExpression; handler: Omit | Function; input?: any; name?: string; rate?: Duration; scope: DotStack; } interface AddCronResult { handler: Function; rule: Rule; } interface AddRuleOptions { bus?: EventBus; busName?: string; eventName: string; name?: string; queue?: Queue; queueArn?: string; scope: DotStack; } export declare const addBus: (options: AddBusOptions) => AddBusResult; export declare const addCron: (options: AddCronOptions) => AddCronResult; export declare const addRule: (options: AddRuleOptions) => Rule; export {};