import type { ILambda } from "../../defineConfig";
export interface FailedMessage {
    Id: string;
    SenderFault: boolean;
    Code: string;
    Message: string;
}
export declare const parseSnsPublishBody: (encodedBody: string[]) => any;
export declare const parseSnsPublishBatchBody: (encodedBody: string[]) => {
    Records: {
        EventSource: string;
        EventVersion: string;
        EventSubscriptionArn: string;
        Sns: any;
    }[];
    Ids: any[];
    Failed: FailedMessage[];
};
export declare const createSnsTopicEvent: (body: any, MessageId: string) => {
    Records: {
        EventSource: string;
        EventVersion: string;
        EventSubscriptionArn: any;
        Sns: {
            Type: string;
            MessageId: string;
            TopicArn: any;
            Subject: any;
            Message: any;
            Timestamp: string;
            SignatureVersion: string;
            Signature: string;
            SigningCertUrl: string;
            UnsubscribeUrl: string;
            MessageAttributes: any;
        };
    }[];
};
export declare const getHandlersByTopicArn: (body: any, handlers: ILambda[]) => {
    handler: ILambda;
    event: any;
}[];
export declare const genSnsPublishResponse: (MessageId: string, RequestId: string) => string;
export declare const genSnsPublishBatchResponse: (RequestId: string, Successful: any[], Failed: FailedMessage[]) => string;
