import e from "@firebase/app";

import "@firebase/logger";

import "@firebase/util";

import "@firebase/webchannel-wrapper";

import "tslib";

import { K as r, Z as t, Q as a, t as s, W as i, B as o, G as n, z as p, J as c, a as m, n as f, e as u, i as l, r as b, c as g, b as h, j as d, X as v } from "./prebuilt-11c12812-a6d2e8ce.js";

import { Component as w } from "@firebase/component";

var I = {
    Firestore: r,
    GeoPoint: s,
    Timestamp: i,
    Blob: o,
    Transaction: n,
    WriteBatch: p,
    DocumentReference: c,
    DocumentSnapshot: m,
    Query: f,
    QueryDocumentSnapshot: u,
    QuerySnapshot: l,
    CollectionReference: b,
    FieldPath: g,
    FieldValue: h,
    setLogLevel: d,
    CACHE_SIZE_UNLIMITED: v
};

/**
 * @license
 * Copyright 2017 Google LLC
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/**
 * Registers the main Firestore build with the components framework.
 * Persistence can be enabled via `firebase.firestore().enablePersistence()`.
 */
function P(e) {
    !
    /**
 * Configures Firestore as part of the Firebase SDK by calling registerService.
 *
 * @param firebase - The FirebaseNamespace to register Firestore with
 * @param firestoreFactory - A factory function that returns a new Firestore
 *    instance.
 */
    function(e, r) {
        e.INTERNAL.registerComponent(new w("firestore", (function(e) {
            var t = e.getProvider("app").getImmediate();
            return r(t, e.getProvider("auth-internal"));
        }), "PUBLIC" /* PUBLIC */).setServiceProps(Object.assign({}, I)));
    }(e, (function(e, s) {
        return new r(e, new t(e, s), new a);
    })), e.registerVersion("@firebase/firestore", "2.1.5-202112213818");
}

P(e);

export { P as registerFirestore };
//# sourceMappingURL=index.js.map
