import { Context, Middleware } from 'cloudflare-email-kit';
import { Email } from 'postal-mime';
export { Address, Attachment, Header, Email as ParsedEmail } from 'postal-mime';

interface ParsedContext extends Context {
    parsed: Email;
}

declare class Parser implements Middleware<Context, ParsedContext> {
    get name(): string;
    handle(ctx: Context, next: (c: ParsedContext) => Promise<void>): Promise<void>;
}

export { type ParsedContext, Parser };
