/** * Admin/dashboard/auth copy (English). * * This catalog owns every string shown outside the scanner flow: auth forms, * dashboard, Applications / API keys CRUD, AdminHealth, ConfigDialog, layout * chrome (AppHeader, MobileMenu, EnvToggle), OAuth callback, orchestration * overlay, and verify-email. * * Language boundary: English for admin/dev, Indonesian for scanner. * See README-i18n.md for the full boundary contract. * * Interpolation: use functions `(x) => \`...${x}\`` for dynamic copy; static * strings stay as string literals so call sites keep literal type safety. */ export declare const admin: { readonly common: { readonly cancel: "Cancel"; readonly confirm: "Confirm"; readonly delete: "Delete"; readonly save: "Save"; readonly close: "Close"; }; readonly applications: { readonly title: "Applications"; readonly subtitle: "Manage your registered apps."; readonly newApp: "New application"; readonly emptyTitle: "No applications yet"; readonly emptyDescription: "Create your first application to start issuing API keys and running face scans."; readonly createApp: "Create application"; readonly createAppLoading: "Creating…"; readonly loading: "Loading applications..."; readonly rename: "Rename"; readonly apiKeys: "API keys"; readonly deleteDialogTitle: "Delete application?"; readonly deleteDialogBody: (name: string) => string; readonly created: (name: string) => string; readonly createFailed: "Failed to create application"; readonly updated: "Application updated"; readonly updateFailed: "Failed to update application"; readonly removed: "Application removed"; readonly removeFailed: "Failed to remove application"; readonly createDialogDescription: "Give your app a memorable name. You can issue API keys for it after creating."; readonly namePlaceholder: "e.g. Spectre Production"; }; readonly apiKeys: { readonly title: "API keys"; readonly subtitleBackLink: "Applications"; readonly subtitleContext: (id: string) => string; readonly generate: "Generate key"; readonly generateLoading: "Generating…"; readonly loading: "Loading API keys..."; readonly emptyTitle: "No API keys yet"; readonly emptyDescription: "Generate your first key to start calling the Spectre face verification API."; readonly revoked: "API key revoked"; readonly revokedFailed: "Failed to revoke API key"; readonly revokeDialogTitle: "Revoke API key?"; readonly revokeDialogBody: "Applications using this key will lose access immediately."; readonly revoke: "Revoke"; readonly deleted: "API key deleted"; readonly deleteFailed: "Failed to delete API key"; readonly deleteDialogTitle: "Delete API key permanently?"; readonly deleteDialogBody: "The key record will be removed from the database. This cannot be undone and the audit record for this key will be lost."; readonly delete: "Delete"; readonly prefixCopied: "Prefix copied"; readonly copyPrefix: "Copy prefix"; readonly copied: "Copied"; readonly statusActive: "active"; readonly statusRevoked: "revoked"; readonly dialogGeneratedTitle: "Key generated"; readonly dialogGeneratedDescription: "This key is shown only once. Copy it now and store it securely."; readonly dialogGenerateTitle: "Generate new key"; readonly dialogGenerateDescription: "A fresh API key will be created for this application."; readonly copyWarning: "Copy now — this will not be shown again"; readonly copyKey: "Copy key"; readonly done: "Done"; readonly newKeyToast: "New API key generated"; readonly copiedToast: "Copied to clipboard"; readonly generated: "API key generated"; readonly generateFailed: "Failed to generate API key"; }; readonly configDialog: { readonly title: "System Configuration"; readonly description: "Manage operational parameters. Changes apply immediately."; readonly saveChanges: "Save changes"; readonly saving: "Saving…"; readonly noChanges: "No changes to save."; readonly saved: "Configuration saved"; readonly savedDescription: "Changes applied immediately."; readonly saveFailed: "Save failed"; readonly unknownError: "Unknown error"; readonly loadFailedTitle: "Unable to load configuration"; readonly loadFailedDescription: "Backend is not reachable or configuration has not been seeded yet."; }; readonly health: { readonly title: "Admin Health"; readonly heading: "Infrastructure Control"; readonly refreshing: "Refreshing..."; readonly refresh: "Refresh"; readonly refreshingStatus: "Refreshing infrastructure status..."; readonly statusUpdated: "Health status updated."; readonly switchingApi: "Switching API environment..."; readonly apiSynchronized: "API environment synchronized."; readonly switchingApiShort: "Switching API..."; readonly databaseFailover: "Database failover..."; readonly orchestratingFailover: "Orchestrating database failover..."; readonly dbTransitioned: (id: string) => string; readonly switchFailed: (err: string) => string; readonly failoverFailed: (err: string) => string; readonly keepAliveHeartbeats: "Keep-Alive Heartbeats"; readonly manage: "Manage"; readonly colTimestamp: "Timestamp"; readonly colSource: "Source"; readonly colTarget: "Target"; readonly colStatus: "Status"; readonly noHeartbeats: "No heartbeat records"; readonly noHeartbeatsDescription: "Heartbeats will appear once the keep-alive engine runs."; readonly systemStatus: "System Status"; readonly hfSpace: "Hugging Face Space"; readonly storageLayer: "Storage Layer"; readonly activeDatabase: "Active Database"; readonly inferenceEngine: "Inference Engine"; readonly mlModel: "ML Model"; readonly apiTarget: "API Target"; readonly apiTargetDescription: "Route requests to backend."; readonly database: "Database"; readonly databaseDescription: "Switch active storage layer."; readonly envLocal: "Local Development"; readonly envHf: "Hugging Face Spaces"; readonly dbSupabase: "Supabase (Session Pooler)"; readonly dbAlpine: "Alpine PostgreSQL"; }; readonly auth: { readonly signInTitle: "Sign in to Spectre"; readonly signInSubtitle: "Enter your credentials to continue."; readonly signingIn: "Signing in…"; readonly signIn: "Sign in"; readonly continueWithGoogle: "Continue with Google"; readonly noAccount: "No account?"; readonly createOne: "Create one"; readonly signUpTitle: "Create your account"; readonly signUpSubtitle: "Join Spectre in under a minute."; readonly email: "Email"; readonly password: "Password"; readonly displayName: "Display name"; readonly passwordHintMin: "Password (min 8 chars)"; readonly creating: "Creating…"; readonly createAccount: "Create account"; readonly haveAccount: "Already have an account?"; readonly signedInToast: "Signed in"; readonly accountCreatedToast: "Account created"; readonly otpHint: "Check your inbox for the OTP."; readonly switchToSignUp: "Switch to sign up"; readonly switchToSignIn: "Switch to sign in"; readonly signingInAria: "Signing in"; readonly creatingAccountAria: "Creating account"; }; readonly oauth: { readonly completing: "Completing sign-in..."; readonly failedTitle: "Sign-in failed"; readonly failedDescription: "We couldn't complete your sign-in. Please try again."; readonly returnToSignIn: "Return to sign-in"; }; readonly layout: { readonly dashboard: "Dashboard"; readonly applications: "Applications"; readonly health: "Health"; readonly navigation: "Navigation menu"; readonly navigationMain: "Main application navigation"; readonly faceScan: "Face scan"; readonly configuration: "Configuration"; readonly logOut: "Log out"; readonly systemConfiguration: "System configuration"; readonly startFaceScan: "Start face scan"; readonly openMenu: "Open menu"; readonly envSwitched: (label: string) => string; readonly envSwitchTo: (label: string) => string; readonly envLocal: "Local"; readonly envHf: "HF Space"; }; readonly orchestration: { readonly synchronizingEnvironment: "Synchronizing environment"; readonly waitingForReadiness: "Waiting for readiness"; readonly envSwitched: (target: string) => string; readonly envSwitchFailed: "Failed to switch API environment"; readonly dbSwitched: (target: string) => string; readonly dbSwitchFailed: "Failed to switch database"; }; readonly dashboard: { readonly welcome: (name: string) => string; readonly title: "Dashboard"; readonly startFaceScan: "Start face scan"; readonly startFaceScanDescription: "Paste an API key and verify identity."; readonly applicationsCard: "Applications"; readonly applicationsCardDescription: "Manage your registered apps."; readonly apiReferenceCard: "API reference"; readonly apiReferenceDescription: "Explore endpoints & authentication."; readonly documentation: "Documentation"; readonly docsSubtitle: "REST API reference for face registration and authentication."; readonly swaggerTitle: "Swagger UI"; readonly swaggerDescription: "Interactive API explorer"; readonly redocTitle: "ReDoc"; readonly redocDescription: "Clean API documentation"; readonly apiSpecTitle: "API Spec (Hosted)"; readonly apiSpecDescription: "Full integration reference"; readonly postmanTitle: "Postman Collection"; readonly postmanDescription: "39 requests · Public workspace"; }; }; export type AdminCopy = typeof admin; //# sourceMappingURL=admin.d.ts.map