import { AppCheck, AppCheckOptions, AppCheckTokenResult, PartialObserver } from 'firebase/app-check'; import { DefaultReactFirebaseHooksOptions } from './Context'; import { DefaultOptionsOnlyAppCheck } from './types'; /** * @description options for {@link useInitializeAppCheck} hooks * @author Achmad Kurnianto * @date 01/08/2024 * @export * @interface DefaultUseInitializeAppCheckOptions * @extends {DefaultReactFirebaseHooksOptions} */ export interface DefaultUseInitializeAppCheckOptions extends DefaultReactFirebaseHooksOptions { /** * @description second parameter of {@link initializeAppCheck} * @author Achmad Kurnianto * @date 30/07/2024 * @type {AppCheckOptions} * @memberof DefaultUseInitializeAppCheckOptions */ options: AppCheckOptions; } /** * @description create your own firebase app check instance with {@link initializeAppCheck} behind. * @author Achmad Kurnianto * @date 01/08/2024 * @export * @template Options * @param {Options} opts * @returns {*} {AppCheck} */ export declare function useInitializeAppCheck(opts: Options): AppCheck; /** * @description type data for {@link useOnTokenChanged} options. {@link options} and {@link appCheck} attribute is XOR relationship. * @author Achmad Kurnianto * @date 30/07/2024 * @export * @interface DefaultUseOnTokenChangedOptions * @extends {DefaultUseInitializeAppCheckOptions} * @extends {DefaultOptionsOnlyAppCheck} */ export interface DefaultUseOnTokenChangedOptions extends DefaultUseInitializeAppCheckOptions, DefaultOptionsOnlyAppCheck { } /** * @description use firebase {@link onTokenChanged} method easily in react app * @author Achmad Kurnianto * @date 30/07/2024 * @export * @template Options * @param {PartialObserver} callback second parameter of {@link onTokenChanged} method. * @param {Options} options provided options for {@link useInitializeAppCheck} hooks. */ export declare function useOnTokenChanged(callback: PartialObserver, opts: Options): void; /** * @description type data of options for {@link useFirebaseAppCheckMethods}. {@link options} and {@link appCheck} attribute * has XOR relationship. * @author Achmad Kurnianto * @date 30/07/2024 * @export * @interface DefaultUseFirebaseAppCheckMethodsOptions * @extends {DefaultUseInitializeAppCheckOptions} * @extends {DefaultOptionsOnlyAppCheck} */ export interface DefaultUseFirebaseAppCheckMethodsOptions extends DefaultUseInitializeAppCheckOptions, DefaultOptionsOnlyAppCheck { } /** * @description data type output from {@link useFirebaseAappCheckMethods} hooks * @author Achmad Kurnianto * @date 03/08/2024 * @export * @interface DefaultUseFirebaseAppCheckMethodsOutput */ export interface DefaultUseFirebaseAppCheckMethodsOutput { /** * @description {@link firebaseGetLimitedUseToken} but no firebase auth instance at the first parameter. * @author Achmad Kurnianto * @date 03/08/2024 * @returns {*} {Promise} * @memberof DefaultUseFirebaseAppCheckMethodsOutput */ getLimitedUseToken(): Promise; /** * @description * @author (Set the text for this tag by adding docthis.authorName to your settings file.) * @date 03/08/2024 * @param {boolean} [forceRefresh] * @returns {*} {Promise} * @memberof DefaultUseFirebaseAppCheckMethodsOutput */ getToken(forceRefresh?: boolean): Promise; setTokenAutoRefreshEnabled(value: boolean): void; } /** * @description use firebase app check methods which require app check instance easily in react app. * @author Achmad Kurnianto * @date 30/07/2024 * @export * @template Options * @param {Options} options provided options when use {@link useInitializeAppCheck} hooks. * @returns {*} */ export declare function useFirebaseAppCheckMethods(opts: Options): DefaultUseFirebaseAppCheckMethodsOutput;