import React from 'react';
export declare type THexKeyPair = {
    publicKey: string;
    secretKey: string;
};
export declare type TUrlParseResult = {
    protocol: string;
    key: string;
    query: any;
};
export declare type TBasicProfile = {
    type: string;
    name: string;
};
export declare type TSetupParams = {
    primaryKey: Uint8Array | string;
    relays: string[];
};
export declare type TSetProfileParams = {
    name: string;
    basicProfile: TBasicProfile;
};
export declare type TSetProfileResult = {
    name: string;
    isNew: boolean;
    slashtag: string;
};
export declare type TSlashUrlResult = {
    loginSuccess: boolean;
    loginError?: Error;
};
export declare type TOnApiReady = (() => void) | undefined;
export declare type TRnSlashtags = {
    generateSeedKeyPair: (seed: string) => Promise<THexKeyPair>;
    setupSDK: (params: TSetupParams) => Promise<void>;
    setProfile: (params: TSetProfileParams) => Promise<TSetProfileResult>;
    parseUrl: (url: string) => Promise<TUrlParseResult>;
    slashUrl: (url: string) => Promise<TSlashUrlResult>;
    state: (message: string) => Promise<any>;
};
export declare const SlashtagsContext: React.Context<{
    current: TRnSlashtags | undefined;
}>;
export declare const SlashtagsProvider: ({ children, onApiReady }: {
    children: any;
    onApiReady: TOnApiReady;
}) => JSX.Element;
export default SlashtagsProvider;
