import { AfterViewInit, ChangeDetectorRef, EventEmitter, OnChanges, OnInit, Renderer2, SimpleChanges, TemplateRef } from '@angular/core';
import { VerificationStatus } from '../types/verification-status.type';
import { NgxSliderRecaptchaVerificationService } from '../core/ngx-slider-recaptcha-verification-service.interface';
import { NgxSliderRecaptchaImageService } from '../core/ngx-slider-recaptcha-image-service.interface';
import { NgxSliderRecaptchaConfig } from '../config/ngx-slider-recaptcha-config';
import { VerificationResponse } from '../core/ngx-slider-recaptcha-verification-response.interface';
import { VerificationRequest } from '../core/ngx-slider-recaptcha-verification-request.interface';
import * as i0 from "@angular/core";
export declare class NgxSliderRecaptchaComponent implements OnInit, OnChanges, AfterViewInit {
    private renderer;
    private cdr;
    private globalSliderConfig;
    private verifier;
    private imageRetriever;
    private canvas;
    private block;
    private captchaContainer;
    private slider;
    config?: NgxSliderRecaptchaConfig;
    disabled?: boolean;
    sliderContent?: string | TemplateRef<void>;
    successContent?: string | TemplateRef<void>;
    failContent?: string | TemplateRef<void>;
    onVerified: EventEmitter<VerificationResponse>;
    onRefresh: EventEmitter<any>;
    onError: EventEmitter<any>;
    private _sliderText;
    private _sliderOffsetX;
    private _blockOffsetX;
    private _maskWidth;
    private _isSliderDragging;
    private _isVerifying;
    private _verificationStatus;
    private _sliderConfig;
    private dragStartX;
    private dragStartY;
    private puzzleX;
    private puzzleY;
    private loadCount;
    private sliderMovements;
    private ctx;
    private blockCtx;
    private readonly isUsingIE;
    private readonly SLIDER_CONTAINER_MARGIN;
    constructor(renderer: Renderer2, cdr: ChangeDetectorRef, globalSliderConfig: NgxSliderRecaptchaConfig, verifier: NgxSliderRecaptchaVerificationService<VerificationRequest, VerificationResponse>, imageRetriever: NgxSliderRecaptchaImageService);
    ngOnInit(): void;
    ngAfterViewInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    reset(): void;
    refresh(): void;
    isTemplate(input: any): input is TemplateRef<void>;
    get isSliderDragging(): boolean;
    get isVerifying(): boolean;
    get sliderText(): string | undefined;
    get verificationStatus(): VerificationStatus;
    get maskWidth(): number;
    get sliderOffsetX(): number;
    get blockOffsetX(): number;
    get sliderConfig(): NgxSliderRecaptchaConfig;
    get isDisabled(): boolean;
    private onDragStart;
    private onDragMove;
    private onDragEnd;
    private initializeCanvasDimensions;
    private initializeCanvasContexts;
    private initializeCaptcha;
    private renderPuzzle;
    private configurePuzzleImage;
    private retryImageLoad;
    private fetchImageSource;
    private loadFallbackImage;
    private drawPuzzlePieceShape;
    private generateRandomNumber;
    private resetCanvas;
    private extractEventCoordinates;
    private initializeDragStartCoordinates;
    private initializeStyles;
    private setStyle;
    private hexToRgba;
    static ɵfac: i0.ɵɵFactoryDeclaration<NgxSliderRecaptchaComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<NgxSliderRecaptchaComponent, "ngx-slider-recaptcha", never, { "config": "config"; "disabled": "disabled"; "sliderContent": "sliderContent"; "successContent": "successContent"; "failContent": "failContent"; }, { "onVerified": "onVerified"; "onRefresh": "onRefresh"; "onError": "onError"; }, never, never, true>;
}
