import { EmulatorMockTokenOptions, FirebaseStorage } from 'firebase/storage'; import { DefaultReactFirebaseServerHooksOptions } from './ServerContext'; /** * @description options provided for {@link useFirebaseStorage} and {@link useFirebaseStorageMethods} hooks. * @author Achmad Kurnianto * @date 31/07/2024 * @export * @interface DefaultUseFirebaseStorageOptions * @extends {DefaultReactFirebaseServerHooksOptions} */ export interface DefaultUseFirebaseStorageOptions extends DefaultReactFirebaseServerHooksOptions { /** * @description second parameter when use firebase {@link getStorage} method. * @author Achmad Kurnianto * @date 31/07/2024 * @type {string} * @memberof DefaultUseFirebaseStorageOptions */ bucketUrl?: string; } /** * @description easily get your firebase storage instance inside your react app * @author Achmad Kurnianto * @date 31/07/2024 * @export * @template Options * @param {Options} [options] * @returns {*} {FirebaseStorage} */ export declare function useFirebaseStorage(options?: Options): FirebaseStorage; /** * @description options for `connectStorageEmulator` method inside {@link useFirebaseStorageMethods} * @author Achmad Kurnianto * @date 31/07/2024 * @export * @interface DefaultConnectStorageEmulatorOptions */ export interface DefaultConnectStorageEmulatorOptions { /** * @description second parameter of original firebase {@link firebaseConnectStorageEmulator} method * @author Achmad Kurnianto * @date 31/07/2024 * @type {string} * @memberof DefaultConnectStorageEmulatorOptions */ host: string; /** * @description third parameter of original firebase {@link firebaseConnectStorageEmulator} method * @author Achmad Kurnianto * @date 31/07/2024 * @type {number} * @memberof DefaultConnectStorageEmulatorOptions */ port: number; /** * @description last parameter of original firebase {@link firebaseConnectStorageEmulator} method * @author Achmad Kurnianto * @date 31/07/2024 * @type {({ * mockUserToken?: EmulatorMockTokenOptions | string * })} * @memberof DefaultConnectStorageEmulatorOptions */ options?: { mockUserToken?: EmulatorMockTokenOptions | string; }; } /** * @description easily get firebase storage methods which depends on its instance for your react app. * @author Achmad Kurnianto * @date 31/07/2024 * @export * @template Options * @param {Options} [options] * @returns {*} */ export declare function useFirebaseStorageMethods(options?: Options): { ref: (url?: string) => import('firebase/storage').StorageReference; connectStorageEmulator: (opts: Opts) => void; };