/** * Valid expiration times in seconds */ export declare const EXPIRATION_TIMES: { readonly '5m': 300; readonly '30m': 1800; readonly '1h': 3600; readonly '4h': 14400; readonly '12h': 43200; readonly '1d': 86400; readonly '3d': 259200; readonly '7d': 604800; readonly '14d': 1209600; readonly '28d': 2419200; }; export type ExpirationKey = keyof typeof EXPIRATION_TIMES; /** * Options for creating a secret */ export interface SecretOptions { /** The secret content to encrypt */ secret: string; /** Optional title for the secret */ title?: string; /** Optional password protection */ password?: string; /** Expiration time (default: '1d') */ expiresIn?: ExpirationKey; /** Maximum number of views (default: 1, max: 9999) */ views?: number; /** Whether to burn after first view (default: true) */ burnable?: boolean; /** Base URL of the Hemmelig instance (default: 'https://hemmelig.app') */ baseUrl?: string; } /** * Result from creating a secret */ export interface CreateSecretResult { /** The full URL to access the secret */ url: string; /** The secret ID */ id: string; /** The expiration time that was set */ expiresIn: string; } /** * Creates an encrypted secret on a Hemmelig server * * @example * ```typescript * import { createSecret } from 'hemmelig'; * * const result = await createSecret({ * secret: 'my secret message', * title: 'API Key', * expiresIn: '1h', * views: 1 * }); * * console.log(result.url); // https://hemmelig.app/secret/abc123#decryptionKey=... * ``` */ export declare function createSecret(options: SecretOptions): Promise; //# sourceMappingURL=index.d.ts.map