pixel-forge
Version:
A comprehensive generator for social media previews, favicons, and visual assets across all platforms
92 lines (91 loc) • 2.48 kB
TypeScript
import type { PixelForgeConfig } from '../../core/config-validator';
export interface ComprehensiveOptions {
title?: string;
description?: string;
template?: 'basic' | 'gradient' | 'custom';
includeStandard?: boolean;
includeInstagram?: boolean;
includeMessaging?: boolean;
includePlatforms?: boolean;
platforms?: {
facebook?: boolean;
twitter?: boolean;
linkedin?: boolean;
instagramStories?: boolean;
instagramReels?: boolean;
whatsapp?: boolean;
discord?: boolean;
telegram?: boolean;
signal?: boolean;
slack?: boolean;
imessage?: boolean;
androidRCS?: boolean;
wechat?: boolean;
tiktok?: boolean;
youtube?: boolean;
pinterest?: boolean;
snapchat?: boolean;
threads?: boolean;
bluesky?: boolean;
mastodon?: boolean;
};
}
export declare class ComprehensiveSocialGenerator {
private config;
private sourceImage;
constructor(sourceImage: string, config: PixelForgeConfig);
/**
* Generate assets for all platforms
*/
generate(options?: ComprehensiveOptions): Promise<void>;
/**
* Generate standard social media formats
*
* Note: OpenGraphGenerator doesn't use the options directly,
* it uses config.socialPreview instead
*/
private generateStandardSocial;
/**
* Generate Instagram formats
*/
private generateInstagram;
/**
* Generate messaging app formats
*/
private generateMessaging;
/**
* Generate other platform formats
*/
private generatePlatforms;
/**
* Get comprehensive HTML meta tags
*/
getMetaTags(): string[];
/**
* Get comprehensive Next.js metadata configuration
*/
getNextMetadata(): {
openGraph: {
images: {
url: string;
width: number;
height: number;
}[];
};
twitter: {
card: string;
images: string[];
};
other: {
'pinterest:description': string | undefined;
'bluesky:handle': string;
'fediverse:creator': string;
'apple-mobile-web-app-capable': string;
'apple-mobile-web-app-status-bar-style': string;
};
};
/**
* Get generated file summary
*/
getGeneratedFiles(): Promise<string[]>;
}