UNPKG

owltech

Version:
100 lines (99 loc) 3.74 kB
/** * @license * Copyright 2017 Google Inc. * * 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. */ import { Node } from '../core/snap/Node'; import { Reference } from './Reference'; import { Index } from '../core/snap/indexes/Index'; /** * Class representing a firebase data snapshot. It wraps a SnapshotNode and * surfaces the public methods (val, forEach, etc.) we want to expose. */ export declare class DataSnapshot { private readonly node_; private readonly ref_; private readonly index_; /** * @param {!Node} node_ A SnapshotNode to wrap. * @param {!Reference} ref_ The ref of the location this snapshot came from. * @param {!Index} index_ The iteration order for this snapshot */ constructor(node_: Node, ref_: Reference, index_: Index); /** * Retrieves the snapshot contents as JSON. Returns null if the snapshot is * empty. * * @return {*} JSON representation of the DataSnapshot contents, or null if empty. */ val(): any; /** * Returns the snapshot contents as JSON, including priorities of node. Suitable for exporting * the entire node contents. * @return {*} JSON representation of the DataSnapshot contents, or null if empty. */ exportVal(): any; toJSON(): any; /** * Returns whether the snapshot contains a non-null value. * * @return {boolean} Whether the snapshot contains a non-null value, or is empty. */ exists(): boolean; /** * Returns a DataSnapshot of the specified child node's contents. * * @param {!string} childPathString Path to a child. * @return {!DataSnapshot} DataSnapshot for child node. */ child(childPathString: string): DataSnapshot; /** * Returns whether the snapshot contains a child at the specified path. * * @param {!string} childPathString Path to a child. * @return {boolean} Whether the child exists. */ hasChild(childPathString: string): boolean; /** * Returns the priority of the object, or null if no priority was set. * * @return {string|number|null} The priority. */ getPriority(): string | number | null; /** * Iterates through child nodes and calls the specified action for each one. * * @param {function(!DataSnapshot)} action Callback function to be called * for each child. * @return {boolean} True if forEach was canceled by action returning true for * one of the child nodes. */ forEach(action: (d: DataSnapshot) => boolean | void): boolean; /** * Returns whether this DataSnapshot has children. * @return {boolean} True if the DataSnapshot contains 1 or more child nodes. */ hasChildren(): boolean; readonly key: string; /** * Returns the number of children for this DataSnapshot. * @return {number} The number of children that this DataSnapshot contains. */ numChildren(): number; /** * @return {Reference} The Firebase reference for the location this snapshot's data came from. */ getRef(): Reference; readonly ref: Reference; }