// components/browser_apis/tab_strip/tab_strip_api_types.mojom-webui.ts is auto generated by mojom_bindings_generator.py, do not edit
// Copyright 2020 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import { mojo } from '//resources/mojo/mojo/public/js/bindings.js';
import { NodeIdDataView, } from './tab_strip_api_types.mojom-converters.js';
import { NodeIdConverter } from './node_id_converter.js';
export const NodeIdSpec = { $: {} };
export const PathSpec = { $: {} };
export const PositionSpec = { $: {} };
export const TabFieldMaskSpec = { $: {} };
export const NodeId_TypeSpec = { $: mojo.internal.Enum() };
export var NodeId_Type;
(function (NodeId_Type) {
    NodeId_Type[NodeId_Type["MIN_VALUE"] = 0] = "MIN_VALUE";
    NodeId_Type[NodeId_Type["MAX_VALUE"] = 3] = "MAX_VALUE";
    NodeId_Type[NodeId_Type["kUnknown"] = 0] = "kUnknown";
    NodeId_Type[NodeId_Type["kWindow"] = 1] = "kWindow";
    NodeId_Type[NodeId_Type["kContent"] = 2] = "kContent";
    NodeId_Type[NodeId_Type["kCollection"] = 3] = "kCollection";
})(NodeId_Type || (NodeId_Type = {}));
const converterForNodeId = new NodeIdConverter();
mojo.internal.TypemappedStruct(NodeIdSpec.$, 'NodeId', NodeIdDataView, converterForNodeId, [
    mojo.internal.StructField('id', 0, 0, mojo.internal.String, null, false /* nullable */, 0, undefined, ((value) => converterForNodeId.id(value))),
    mojo.internal.StructField('type', 8, 0, NodeId_TypeSpec.$, 0, false /* nullable */, 0, undefined, ((value) => converterForNodeId.type(value))),
], [[0, 24],]);
mojo.internal.Struct(PathSpec.$, 'Path', [
    mojo.internal.StructField('components', 0, 0, mojo.internal.Array(NodeIdSpec.$, false), null, false /* nullable */, 0, undefined, undefined),
], [[0, 16],]);
mojo.internal.Struct(PositionSpec.$, 'Position', [
    mojo.internal.StructField('path', 0, 0, PathSpec.$, null, false /* nullable */, 0, undefined, undefined),
    mojo.internal.StructField('index', 8, 0, mojo.internal.Uint32, 0, false /* nullable */, 0, undefined, undefined),
], [[0, 24],]);
mojo.internal.Struct(TabFieldMaskSpec.$, 'TabFieldMask', [
    mojo.internal.StructField('title', 0, 0, mojo.internal.Bool, false, false /* nullable */, 0, undefined, undefined),
    mojo.internal.StructField('url', 0, 1, mojo.internal.Bool, false, false /* nullable */, 0, undefined, undefined),
    mojo.internal.StructField('favicon', 0, 2, mojo.internal.Bool, false, false /* nullable */, 0, undefined, undefined),
    mojo.internal.StructField('alertStates', 0, 3, mojo.internal.Bool, false, false /* nullable */, 0, undefined, undefined),
    mojo.internal.StructField('networkState', 0, 4, mojo.internal.Bool, false, false /* nullable */, 0, undefined, undefined),
    mojo.internal.StructField('isActive', 0, 5, mojo.internal.Bool, false, false /* nullable */, 0, undefined, undefined),
    mojo.internal.StructField('isSelected', 0, 6, mojo.internal.Bool, false, false /* nullable */, 0, undefined, undefined),
    mojo.internal.StructField('isBlocked', 0, 7, mojo.internal.Bool, false, false /* nullable */, 0, undefined, undefined),
    mojo.internal.StructField('lastActive', 1, 0, mojo.internal.Bool, false, false /* nullable */, 0, undefined, undefined),
], [[0, 16],]);
