import type { AuthType, CorbadoApp, CorbadoError, GeneralBlockVerifyIdentifier, ProcessCommon } from '@corbado/web-core'; import type { Result } from 'ts-results'; import { BlockTypes, ScreenNames } from '../constants'; import type { ErrorTranslator } from '../errorTranslator'; import type { ProcessHandler } from '../processHandler'; import type { BlockDataEmailVerify } from '../types'; import { Block } from './Block'; export declare class EmailVerifyBlock extends Block { readonly data: BlockDataEmailVerify; readonly type = BlockTypes.EmailVerify; readonly initialScreen: ScreenNames; readonly authType: AuthType; readonly emailLinkToken?: string; constructor(app: CorbadoApp, flowHandler: ProcessHandler, common: ProcessCommon, errorTranslator: ErrorTranslator, data: GeneralBlockVerifyIdentifier, authType: AuthType, fromEmailVerifyFromUrl: boolean, emailLinkToken?: string); static fromBackend(app: CorbadoApp, flowHandler: ProcessHandler, common: ProcessCommon, translator: ErrorTranslator, data: GeneralBlockVerifyIdentifier, authType: AuthType): EmailVerifyBlock; static fromUrl(app: CorbadoApp, flowHandler: ProcessHandler, translator: ErrorTranslator, data: GeneralBlockVerifyIdentifier, authType: AuthType, emailLinkToken: string): EmailVerifyBlock; showEditEmail(): void; showEmailVerificationScreen(): void; validateCode(code: string): Promise; resendEmail(): Promise; updateEmail(value: string): Promise; validateEmailLink(abortController: AbortController): Promise>; getVerificationStatus(): Promise>; }