import type { TurboModule } from 'react-native';
import type { NotificareApplication } from './models/notificare-application';
import type { NotificareNotification } from './models/notificare-notification';
import type { NotificareDynamicLink } from './models/notificare-dynamic-link';
import type { NotificareDevice } from './models/notificare-device';
import type { NotificareDoNotDisturb } from './models/notificare-do-not-disturb';
export interface Spec extends TurboModule {
    addListener: (eventType: string) => void;
    removeListeners: (count: number) => void;
    isConfigured(): Promise<boolean>;
    isReady(): Promise<boolean>;
    launch(): Promise<void>;
    unlaunch(): Promise<void>;
    getApplication(): Promise<NotificareApplication | null>;
    fetchApplication(): Promise<NotificareApplication>;
    fetchNotification(id: string): Promise<NotificareNotification>;
    fetchDynamicLink(url: string): Promise<NotificareDynamicLink>;
    canEvaluateDeferredLink(): Promise<boolean>;
    evaluateDeferredLink(): Promise<boolean>;
    getCurrentDevice(): Promise<NotificareDevice | null>;
    getPreferredLanguage(): Promise<string | null>;
    updatePreferredLanguage(language: string | null): Promise<void>;
    registerUser(userId: string | null, userName: string | null): Promise<void>;
    updateUser(userId: string | null, userName: string | null): Promise<void>;
    fetchTags(): Promise<string[]>;
    addTag(tag: string): Promise<void>;
    addTags(tags: string[]): Promise<void>;
    removeTag(tag: string): Promise<void>;
    removeTags(tags: string[]): Promise<void>;
    clearTags(): Promise<void>;
    fetchDoNotDisturb(): Promise<NotificareDoNotDisturb | null>;
    updateDoNotDisturb(dnd: Object): Promise<void>;
    clearDoNotDisturb(): Promise<void>;
    fetchUserData(): Promise<Record<string, string>>;
    updateUserData(userData: Object): Promise<void>;
    logCustom(event: string, data?: Object): Promise<void>;
}
declare const _default: Spec;
export default _default;
//# sourceMappingURL=NativeNotificareModule.d.ts.map