import { Function, LayerVersion } from 'aws-cdk-lib/aws-lambda'; import { StateMachine } from 'aws-cdk-lib/aws-stepfunctions'; import { Duration } from 'aws-cdk-lib'; import { DotStack } from '../constructs/Stack'; export interface AddFunctionOptions { addEnvars?: string[]; alarmEmail?: string; concurrency?: FunctionConcurrencyOptions; deadLetterQueue?: boolean; environmentVariables?: { [key: string]: string; }; handlerPath?: string; layerArns?: string[]; layers?: LayerVersion[]; memorySize?: number; name?: string; scope: DotStack; storageMb?: number; timeout?: Duration; } export interface FunctionConcurrencyOptions { provisioned?: { max: number; min?: number; percentage?: number; }; reserved?: number; } interface GrantRemoteOptions { consumers: Array; functionName: string; scope: DotStack; } interface GrantSelfInvokeOptions { consumers: Array; } export declare const addFunctionAlarms: (email: string, fn: Function, fnName: string, scope: DotStack) => void; export declare const grantRemoteInvoke: ({ consumers, functionName, scope }: GrantRemoteOptions) => void; export declare const grantSelfInvoke: ({ consumers }: GrantSelfInvokeOptions) => void; export {};