import { DetailKey, IEvent } from '@mbc-cqrs-serverless/core';
import { DynamoDBRecord, StreamRecord } from 'aws-lambda';
import { TaskEntity } from '../entity/task.entity';
export declare const TASK_EVENT_ACTION = "task-execute";
export declare class TaskEvent implements IEvent, DynamoDBRecord {
    source: string;
    awsRegion?: string | undefined;
    dynamodb?: StreamRecord | undefined;
    eventID?: string | undefined;
    eventName?: 'INSERT' | 'MODIFY' | 'REMOVE' | undefined;
    eventSource?: string | undefined;
    eventSourceARN?: string | undefined;
    eventVersion?: string | undefined;
    userIdentity?: any;
    private _taskKey;
    private _taskEntity?;
    constructor(event?: Partial<TaskEvent>);
    get tableName(): string;
    fromDynamoDBRecord(record: DynamoDBRecord): TaskEvent;
    get taskEntity(): TaskEntity;
    get taskKey(): DetailKey;
}
