import type { NewsletterDetailDto, NewsletterListItemDto } from '../dto/newsletter.dto';
export interface WpMediaItem {
    node: {
        sourceUrl: string;
    } | null;
}
export interface WpTermConnection {
    nodes: {
        slug: string;
    }[];
}
export interface WpNewsletterTranslationNode {
    slug: string | null;
    languageCode: string | null;
}
export interface WpNewsletterNode {
    slug: string | null;
    title: string | null;
    date: string | null;
    excerpt: string | null;
    content: string | null;
    featuredImage: WpMediaItem | null;
    riArticleCategories: WpTermConnection | null;
    riArticleCountries: WpTermConnection | null;
    translations?: (WpNewsletterTranslationNode | null)[] | null;
}
export interface WpNewslettersConnection {
    nodes: WpNewsletterNode[];
    pageInfo: {
        hasNextPage: boolean;
        endCursor?: string | null;
    };
}
export declare function mapWpNewsletterToListItem(node: WpNewsletterNode): NewsletterListItemDto;
export declare function mapWpNewsletterToDetail(node: WpNewsletterNode): NewsletterDetailDto;
export declare function sliceNewslettersPage(connection: WpNewslettersConnection, page: number, limit: number): {
    newsletters: NewsletterListItemDto[];
    hasNextPage: boolean;
};
