UNPKG

@kya-os/cli

Version:

CLI for MCP-I setup and management

115 lines 3.11 kB
/** * Decrypt Effect * Movie-style text decryption effect with typing animation */ import { BaseEffect } from "../types.js"; /** * Configuration options for the Decrypt effect */ export interface DecryptEffectOptions { /** Duration in milliseconds */ duration?: number; /** Number of characters typed per keystroke */ typingSpeed?: number; /** Colors for the ciphertext (randomly selected per character) */ ciphertextColors?: string[]; /** Final color for decrypted text */ finalColor?: string; /** Use gradient for final color */ useGradient?: boolean; /** Gradient direction (vertical or horizontal) */ gradientDirection?: "vertical" | "horizontal"; /** Typing probability per frame (0-1) */ typingProbability?: number; /** Fast reveal mode - complete animation in first portion of duration */ fastReveal?: boolean; /** Percentage of duration to complete animation (0-1) when fastReveal is true */ revealCompletionRatio?: number; } /** * Decrypt effect implementation */ export declare class DecryptEffect extends BaseEffect { readonly name = "Decrypt"; readonly description = "Movie-style text decryption effect with typing animation"; private options; private characterStates; private animationFrameCount; private totalFrames; private typingQueue; private activeTypingChars; private decryptingChars; private _isEffectComplete; private readonly encryptedSymbols; private readonly typingSymbols; constructor(options?: DecryptEffectOptions); /** * Initialize the pool of encrypted symbols */ private initializeEncryptedSymbols; /** * Initialize the effect */ protected onInitialize(): void; /** * Calculate gradient colors based on dimensions */ private calculateGradientColors; /** * Render the next frame */ render(): Promise<string[]>; /** * Update animation state for all characters */ private updateAnimationState; /** * Update typing phase animation */ private updateTypingPhase; /** * Update decryption phase animation */ private updateDecryptionPhase; /** * Create visual representation of a character */ private createCharacterVisual; /** * Get a random ciphertext color */ private getRandomCiphertextColor; /** * Get a random encrypted symbol */ private getRandomEncryptedSymbol; /** * Check if the effect is complete */ private checkCompletion; /** * Shuffle array in place */ private shuffleArray; /** * Get ANSI color code for a color */ private getColorCode; /** * Interpolate between two colors */ private interpolateColor; /** * Render fallback for when effects are disabled */ renderFallback(): string[]; /** * Check if effect is complete */ isComplete(): boolean; /** * Reset the effect */ protected onReset(): void; } //# sourceMappingURL=decrypt.d.ts.map