import type { CloudFormationCustomResourceCreateEvent, CloudFormationCustomResourceUpdateEvent, CloudFormationCustomResourceDeleteEvent, CloudFormationCustomResourceHandler, Context } from 'aws-lambda'; import { LogFactory, Logger } from './log-factory'; export interface ResourceHandlerReturn { physicalResourceId: string; responseData?: Record; } export interface OnCreateHandler { (event: CloudFormationCustomResourceCreateEvent, context: Context, logger: Logger): Promise; } export interface OnUpdateHandler { (event: CloudFormationCustomResourceUpdateEvent, context: Context, logger: Logger): Promise; } export interface OnDeleteHandler { (event: CloudFormationCustomResourceDeleteEvent, context: Context, logger: Logger): Promise; } export interface ResourceHandler { onCreate?: OnCreateHandler; onUpdate?: OnUpdateHandler; onDelete?: OnDeleteHandler; } export interface ResourceHandlerFactory { (logger?: Logger): ResourceHandler | Promise; } export declare const customResourceHelper: (resourceHandlerFactory: ResourceHandlerFactory, logFactory?: LogFactory | undefined) => CloudFormationCustomResourceHandler;