export { isExplicitOffsetIso8601Timestamp } from "./iso-timestamp.js"; export declare const EMBED_LAYOUT_LIMITS: Readonly<{ aggregateCharacters: 6000; authorNameCharacters: 256; descriptionCharacters: 4096; embeds: 10; fieldNameCharacters: 256; fields: 25; fieldValueCharacters: 1024; footerTextCharacters: 2048; requestBytes: 65536; titleCharacters: 256; }>; export interface EmbedFieldInput { inline?: boolean; name: string; value: string; } export interface EmbedLayoutInput { authorName?: string; color?: number; description?: string; fields?: readonly EmbedFieldInput[]; footerText?: string; timestamp?: string; title?: string; } export interface NormalizedEmbedField { inline: boolean; name: string; value: string; } export interface NormalizedEmbed { authorName: string | null; color: number | null; description: string | null; fields: NormalizedEmbedField[]; footerText: string | null; timestamp: string | null; title: string | null; } export type NormalizedEmbedLayout = NormalizedEmbed[]; export interface NormalizedEmbedPresentation { content: string | null; embeds: NormalizedEmbedLayout; } export interface DiscordStaticEmbedField { inline: boolean; name: string; value: string; } export interface DiscordStaticEmbed { author?: { name: string; }; color?: number; description?: string; fields?: DiscordStaticEmbedField[]; footer?: { text: string; }; timestamp?: string; title?: string; } export interface EmbedLayoutCounts { embeds: number; fields: number; } export interface EmbedPresentationReview { aggregateCharacters: number; contentCharacters: number; counts: EmbedLayoutCounts; mentionedUserIds: string[]; notificationUserIds: string[]; presentation: NormalizedEmbedPresentation; preview: string; requestBytes: number; suppressedUserMentionIds: string[]; warnings: string[]; } export declare function embedLayoutAggregateCharacters(layout: NormalizedEmbedLayout): number; export declare function normalizeEmbedLayout(input: unknown): NormalizedEmbedLayout; export declare function normalizeEmbedPresentation(input: unknown): NormalizedEmbedPresentation; export declare function compileEmbedLayout(input: unknown): DiscordStaticEmbed[]; export declare function compileNormalizedEmbedLayout(input: NormalizedEmbedLayout): DiscordStaticEmbed[]; export declare function assertCompiledEmbedLayout(input: unknown): asserts input is DiscordStaticEmbed[]; export declare function parseDiscordEmbedResponse(input: unknown): NormalizedEmbedLayout; export declare function parseDiscordEmbedPresentation(content: unknown, embeds: unknown): NormalizedEmbedPresentation; export declare function embedLayoutsEqual(left: NormalizedEmbedLayout, right: NormalizedEmbedLayout): boolean; export declare function embedPresentationsEqual(left: NormalizedEmbedPresentation, right: NormalizedEmbedPresentation): boolean; export declare function embedLayoutCounts(layout: NormalizedEmbedLayout): EmbedLayoutCounts; export declare function embedLayoutText(layout: NormalizedEmbedLayout): string; export declare function reviewEmbedPresentation(input: unknown, requestedNotificationUserIds: readonly string[] | undefined): EmbedPresentationReview; export declare function reviewNormalizedEmbedPresentation(input: NormalizedEmbedPresentation, requestedNotificationUserIds: readonly string[] | undefined): EmbedPresentationReview; //# sourceMappingURL=embed-layout.d.ts.map