import { FirebaseApp } from '@nativescript/firebase-core';
import { IDynamicLink, IDynamicLinkAnalyticsParameters, IDynamicLinkAndroidParameters, IDynamicLinkIOSParameters, IDynamicLinkITunesParameters, IDynamicLinkNavigationParameters, IDynamicLinkParameters, IDynamicLinks, IDynamicLinkSocialParameters, OnLinkListener, ShortLinkType } from './common';
export { ShortLinkType } from './common';
export declare class DynamicLinkAnalyticsParameters implements IDynamicLinkAnalyticsParameters {
    _native: FIRDynamicLinkGoogleAnalyticsParameters;
    constructor();
    static fromNative(link: FIRDynamicLinkGoogleAnalyticsParameters): DynamicLinkAnalyticsParameters;
    get campaign(): undefined | string;
    set campaign(value: undefined | string);
    get content(): undefined | string;
    set content(value: undefined | string);
    get medium(): undefined | string;
    set medium(value: undefined | string);
    get source(): undefined | string;
    set source(value: undefined | string);
    get term(): undefined | string;
    set term(value: undefined | string);
    get native(): FIRDynamicLinkGoogleAnalyticsParameters;
    get ios(): FIRDynamicLinkGoogleAnalyticsParameters;
}
export declare class DynamicLinkAndroidParameters implements IDynamicLinkAndroidParameters {
    _native: FIRDynamicLinkAndroidParameters;
    constructor(packageName?: string);
    static fromNative(link: FIRDynamicLinkAndroidParameters): DynamicLinkAndroidParameters;
    get fallbackUrl(): string;
    set fallbackUrl(value: string);
    get minimumVersion(): number;
    set minimumVersion(value: number);
    get packageName(): string;
    get native(): FIRDynamicLinkAndroidParameters;
    get ios(): FIRDynamicLinkAndroidParameters;
}
export declare class DynamicLinkIOSParameters implements IDynamicLinkIOSParameters {
    _native: FIRDynamicLinkIOSParameters;
    constructor(bundleId?: string);
    static fromNative(link: FIRDynamicLinkIOSParameters): DynamicLinkIOSParameters;
    get appStoreId(): string;
    set appStoreId(value: string);
    get bundleId(): string;
    get customScheme(): string;
    set customScheme(value: string);
    get fallbackUrl(): string;
    set fallbackUrl(value: string);
    get iPadBundleId(): string;
    set iPadBundleId(value: string);
    get iPadFallbackUrl(): string;
    set iPadFallbackUrl(value: string);
    get minimumVersion(): string;
    get native(): FIRDynamicLinkIOSParameters;
    get ios(): FIRDynamicLinkIOSParameters;
}
export declare class DynamicLinkITunesParameters implements IDynamicLinkITunesParameters {
    _native: FIRDynamicLinkItunesConnectAnalyticsParameters;
    constructor();
    static fromNative(link: FIRDynamicLinkItunesConnectAnalyticsParameters): DynamicLinkITunesParameters;
    get affiliateToken(): string;
    set affiliateToken(value: string);
    get campaignToken(): string;
    set campaignToken(value: string);
    get providerToken(): string;
    set providerToken(value: string);
    get native(): FIRDynamicLinkItunesConnectAnalyticsParameters;
    get ios(): FIRDynamicLinkItunesConnectAnalyticsParameters;
}
export declare class DynamicLinkNavigationParameters implements IDynamicLinkNavigationParameters {
    _native: FIRDynamicLinkNavigationInfoParameters;
    constructor();
    static fromNative(link: FIRDynamicLinkNavigationInfoParameters): DynamicLinkNavigationParameters;
    get forcedRedirectEnabled(): boolean;
    set forcedRedirectEnabled(value: boolean);
    get native(): FIRDynamicLinkNavigationInfoParameters;
    get ios(): FIRDynamicLinkNavigationInfoParameters;
}
export declare class DynamicLinkSocialParameters implements IDynamicLinkSocialParameters {
    _native: FIRDynamicLinkSocialMetaTagParameters;
    constructor();
    static fromNative(link: FIRDynamicLinkSocialMetaTagParameters): DynamicLinkSocialParameters;
    get descriptionText(): string;
    set descriptionText(value: string);
    get imageUrl(): string;
    set imageUrl(value: string);
    get title(): string;
    set title(value: string);
    get native(): FIRDynamicLinkSocialMetaTagParameters;
    get ios(): FIRDynamicLinkSocialMetaTagParameters;
}
export declare class DynamicLinkParameters implements IDynamicLinkParameters {
    _native: FIRDynamicLinkComponents;
    static fromNative(link: FIRDynamicLinkComponents): DynamicLinkParameters;
    _analytics: DynamicLinkAnalyticsParameters;
    get analytics(): DynamicLinkAnalyticsParameters;
    set analytics(value: DynamicLinkAnalyticsParameters);
    _android: DynamicLinkAndroidParameters;
    get android(): DynamicLinkAndroidParameters;
    set android(value: DynamicLinkAndroidParameters);
    get domainUriPrefix(): string;
    _ios: DynamicLinkIOSParameters;
    get ios(): DynamicLinkIOSParameters;
    set ios(value: DynamicLinkIOSParameters);
    _itunes: DynamicLinkITunesParameters;
    get itunes(): DynamicLinkITunesParameters;
    set itunes(value: DynamicLinkITunesParameters);
    get link(): string;
    set link(value: string);
    _navigation: DynamicLinkNavigationParameters;
    get navigation(): DynamicLinkNavigationParameters;
    set navigation(value: DynamicLinkNavigationParameters);
    _social: DynamicLinkSocialParameters;
    get social(): DynamicLinkSocialParameters;
    set social(value: DynamicLinkSocialParameters);
    get native(): FIRDynamicLinkComponents;
}
export declare class DynamicLink implements IDynamicLink {
    _native: FIRDynamicLink;
    static fromNative(link: FIRDynamicLink): DynamicLink;
    get minimumAppVersion(): string;
    get url(): string;
    get utmParameters(): Record<string, string>;
    get native(): FIRDynamicLink;
    get ios(): FIRDynamicLink;
    toJSON(): {
        minimumAppVersion: string;
        url: string;
        utmParameters: Record<string, string>;
    };
}
export declare class DynamicLinks implements IDynamicLinks {
    _native: FIRDynamicLinks;
    _app: FirebaseApp;
    static _onLink: OnLinkListener;
    constructor();
    createLink(link: string, domainUriPrefix: string): DynamicLinkParameters;
    createShortLink(link: string, domainUriPrefix: string, shortLinkType?: ShortLinkType): DynamicLinkParameters;
    buildLink(link: DynamicLinkParameters): Promise<string>;
    onLink(listener: OnLinkListener): void;
    resolveLink(link: string): Promise<DynamicLink>;
    get native(): FIRDynamicLinks;
    get ios(): FIRDynamicLinks;
    get app(): FirebaseApp;
}
