import { AccessBusinessService } from './access.business.service'; export type DevicePollStatus = 'pending' | 'approved' | 'denied' | 'expired'; export declare class DeviceAuthService { private readonly accessBusinessService; constructor(accessBusinessService: AccessBusinessService); start(): Promise<{ device_code: string; user_code: string; verification_uri: string; verification_uri_complete: string; expires_in: number; interval: number; }>; getForApproval(userCode: string): Promise<{ status: "not_found"; user_code?: undefined; expires_at?: undefined; } | { status: "denied"; user_code: string; expires_at?: undefined; } | { status: "decided"; user_code: string; expires_at?: undefined; } | { status: "expired"; user_code: string; expires_at?: undefined; } | { status: "pending"; user_code: string; expires_at: Date; }>; decide(userCode: string, action: 'approve' | 'deny', businessId?: number): Promise<{ status: "denied" | "already_decided"; business_id?: undefined; } | { status: "approved"; business_id: number; }>; poll(deviceCode: string): Promise>; private mintPersonalKey; private resolveBusinessForApprove; private findByUserCode; private normalizeUserCode; private generateUserCode; private hash; private verificationUri; }