;
/**
* Gets the size of the GIF in bytes
*/
get size(): number;
/**
* Gets the MIME type
*/
get mimeType(): string;
/**
* Gets the file extension
*/
get extension(): string;
/**
* Returns a formatted size string
*/
get sizeFormatted(): string;
/**
* Validates that the data appears to be a valid GIF
*/
isValidGif(): boolean;
/**
* Manual base64 encoding fallback
*/
private manualBase64Encode;
/**
* Gets comprehensive information about the GIF.
*
* Returns an object containing detailed information about the GIF including
* size, format, version, and other metadata. Useful for debugging or displaying
* file information to users.
*
* @returns Object containing GIF metadata and properties
*
* @example
* ```typescript
* const gif = createAnimatedGradientGif(300, 200,
* { red: 255, green: 100, blue: 0 },
* { red: 100, green: 0, blue: 255 },
* { frames: 30, delay: 50 }
* );
*
* const info = gif.getInfo();
* console.log(info);
* // {
* // size: 15420,
* // sizeFormatted: "15.1 KB",
* // mimeType: "image/gif",
* // extension: "gif",
* // isValid: true,
* // version: "GIF89a",
* // hasTransparency: false,
* // isAnimated: true
* // }
* ```
*
* @example
* ```typescript
* // Display file info to user
* function displayGifInfo(gif: GifResult) {
* const info = gif.getInfo();
*
* const infoDiv = document.createElement('div');
* infoDiv.innerHTML = `
* GIF Information
* Size: ${info.sizeFormatted}
* Version: ${info.version}
* Valid: ${info.isValid ? 'Yes' : 'No'}
* Animated: ${info.isAnimated ? 'Yes' : 'No'}
* `;
*
* document.body.appendChild(infoDiv);
* }
* ```
*/
getInfo(): {
size: number;
sizeFormatted: string;
isValid: boolean;
mimeType: string;
signature: string;
};
}