// This is a generated file - do not edit.
//
// Generated from rules.proto.

// @dart = 3.3

// ignore_for_file: annotate_overrides, camel_case_types, comment_references
// ignore_for_file: constant_identifier_names
// ignore_for_file: curly_braces_in_flow_control_structures
// ignore_for_file: deprecated_member_use_from_same_package, library_prefixes
// ignore_for_file: non_constant_identifier_names

import 'dart:core' as $core;

import 'package:protobuf/protobuf.dart' as $pb;

import 'rules.pbenum.dart';
import 'shared.pbenum.dart' as $1;

export 'package:protobuf/protobuf.dart' show GeneratedMessageGenericExtensions;

export 'rules.pbenum.dart';

/// Rule represents a named business rule applied to a specific entity type within an organisation.
class Rule extends $pb.GeneratedMessage {
  factory Rule({
    $core.String? iD,
    $core.String? organisationID,
    $1.EntityType? entity,
    $core.String? name,
    $core.String? description,
    $core.String? definition,
    RuleType? ruleType,
    $core.String? ruleTypeID,
    $core.bool? status,
    $core.Iterable<$core.String>? attributes,
  }) {
    final result = create();
    if (iD != null) result.iD = iD;
    if (organisationID != null) result.organisationID = organisationID;
    if (entity != null) result.entity = entity;
    if (name != null) result.name = name;
    if (description != null) result.description = description;
    if (definition != null) result.definition = definition;
    if (ruleType != null) result.ruleType = ruleType;
    if (ruleTypeID != null) result.ruleTypeID = ruleTypeID;
    if (status != null) result.status = status;
    if (attributes != null) result.attributes.addAll(attributes);
    return result;
  }

  Rule._();

  factory Rule.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory Rule.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'Rule', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOS(1, _omitFieldNames ? '' : 'ID', protoName: 'ID')
    ..aOS(2, _omitFieldNames ? '' : 'OrganisationID', protoName: 'OrganisationID')
    ..e<$1.EntityType>(3, _omitFieldNames ? '' : 'Entity', $pb.PbFieldType.OE, protoName: 'Entity', defaultOrMaker: $1.EntityType.ENTITY_TYPE_UNKNOWN, valueOf: $1.EntityType.valueOf, enumValues: $1.EntityType.values)
    ..aOS(4, _omitFieldNames ? '' : 'Name', protoName: 'Name')
    ..aOS(5, _omitFieldNames ? '' : 'Description', protoName: 'Description')
    ..aOS(6, _omitFieldNames ? '' : 'Definition', protoName: 'Definition')
    ..e<RuleType>(7, _omitFieldNames ? '' : 'RuleType', $pb.PbFieldType.OE, protoName: 'RuleType', defaultOrMaker: RuleType.RULE_TYPE_PROJECT_UNKNOWN, valueOf: RuleType.valueOf, enumValues: RuleType.values)
    ..aOS(8, _omitFieldNames ? '' : 'RuleTypeID', protoName: 'RuleTypeID')
    ..aOB(9, _omitFieldNames ? '' : 'Status', protoName: 'Status')
    ..pPS(10, _omitFieldNames ? '' : 'Attributes', protoName: 'Attributes')
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  Rule clone() => Rule()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  Rule copyWith(void Function(Rule) updates) => super.copyWith((message) => updates(message as Rule)) as Rule;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static Rule create() => Rule._();
  @$core.override
  Rule createEmptyInstance() => create();
  static $pb.PbList<Rule> createRepeated() => $pb.PbList<Rule>();
  @$core.pragma('dart2js:noInline')
  static Rule getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<Rule>(create);
  static Rule? _defaultInstance;

  @$pb.TagNumber(1)
  $core.String get iD => $_getSZ(0);
  @$pb.TagNumber(1)
  set iD($core.String value) => $_setString(0, value);
  @$pb.TagNumber(1)
  $core.bool hasID() => $_has(0);
  @$pb.TagNumber(1)
  void clearID() => $_clearField(1);

  @$pb.TagNumber(2)
  $core.String get organisationID => $_getSZ(1);
  @$pb.TagNumber(2)
  set organisationID($core.String value) => $_setString(1, value);
  @$pb.TagNumber(2)
  $core.bool hasOrganisationID() => $_has(1);
  @$pb.TagNumber(2)
  void clearOrganisationID() => $_clearField(2);

  @$pb.TagNumber(3)
  $1.EntityType get entity => $_getN(2);
  @$pb.TagNumber(3)
  set entity($1.EntityType value) => $_setField(3, value);
  @$pb.TagNumber(3)
  $core.bool hasEntity() => $_has(2);
  @$pb.TagNumber(3)
  void clearEntity() => $_clearField(3);

  @$pb.TagNumber(4)
  $core.String get name => $_getSZ(3);
  @$pb.TagNumber(4)
  set name($core.String value) => $_setString(3, value);
  @$pb.TagNumber(4)
  $core.bool hasName() => $_has(3);
  @$pb.TagNumber(4)
  void clearName() => $_clearField(4);

  @$pb.TagNumber(5)
  $core.String get description => $_getSZ(4);
  @$pb.TagNumber(5)
  set description($core.String value) => $_setString(4, value);
  @$pb.TagNumber(5)
  $core.bool hasDescription() => $_has(4);
  @$pb.TagNumber(5)
  void clearDescription() => $_clearField(5);

  @$pb.TagNumber(6)
  $core.String get definition => $_getSZ(5);
  @$pb.TagNumber(6)
  set definition($core.String value) => $_setString(5, value);
  @$pb.TagNumber(6)
  $core.bool hasDefinition() => $_has(5);
  @$pb.TagNumber(6)
  void clearDefinition() => $_clearField(6);

  @$pb.TagNumber(7)
  RuleType get ruleType => $_getN(6);
  @$pb.TagNumber(7)
  set ruleType(RuleType value) => $_setField(7, value);
  @$pb.TagNumber(7)
  $core.bool hasRuleType() => $_has(6);
  @$pb.TagNumber(7)
  void clearRuleType() => $_clearField(7);

  @$pb.TagNumber(8)
  $core.String get ruleTypeID => $_getSZ(7);
  @$pb.TagNumber(8)
  set ruleTypeID($core.String value) => $_setString(7, value);
  @$pb.TagNumber(8)
  $core.bool hasRuleTypeID() => $_has(7);
  @$pb.TagNumber(8)
  void clearRuleTypeID() => $_clearField(8);

  @$pb.TagNumber(9)
  $core.bool get status => $_getBF(8);
  @$pb.TagNumber(9)
  set status($core.bool value) => $_setBool(8, value);
  @$pb.TagNumber(9)
  $core.bool hasStatus() => $_has(8);
  @$pb.TagNumber(9)
  void clearStatus() => $_clearField(9);

  @$pb.TagNumber(10)
  $pb.PbList<$core.String> get attributes => $_getList(9);
}

/// Create
class CreateRuleRequest extends $pb.GeneratedMessage {
  factory CreateRuleRequest({
    $core.String? organisationID,
    $1.EntityType? entity,
    $core.String? name,
    RuleType? ruleType,
    $core.String? ruleTypeID,
    $core.String? description,
    $core.String? definition,
    $core.String? issuer,
    $core.Iterable<$core.String>? attributes,
  }) {
    final result = create();
    if (organisationID != null) result.organisationID = organisationID;
    if (entity != null) result.entity = entity;
    if (name != null) result.name = name;
    if (ruleType != null) result.ruleType = ruleType;
    if (ruleTypeID != null) result.ruleTypeID = ruleTypeID;
    if (description != null) result.description = description;
    if (definition != null) result.definition = definition;
    if (issuer != null) result.issuer = issuer;
    if (attributes != null) result.attributes.addAll(attributes);
    return result;
  }

  CreateRuleRequest._();

  factory CreateRuleRequest.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory CreateRuleRequest.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'CreateRuleRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOS(1, _omitFieldNames ? '' : 'OrganisationID', protoName: 'OrganisationID')
    ..e<$1.EntityType>(2, _omitFieldNames ? '' : 'Entity', $pb.PbFieldType.OE, protoName: 'Entity', defaultOrMaker: $1.EntityType.ENTITY_TYPE_UNKNOWN, valueOf: $1.EntityType.valueOf, enumValues: $1.EntityType.values)
    ..aOS(3, _omitFieldNames ? '' : 'Name', protoName: 'Name')
    ..e<RuleType>(4, _omitFieldNames ? '' : 'RuleType', $pb.PbFieldType.OE, protoName: 'RuleType', defaultOrMaker: RuleType.RULE_TYPE_PROJECT_UNKNOWN, valueOf: RuleType.valueOf, enumValues: RuleType.values)
    ..aOS(5, _omitFieldNames ? '' : 'RuleTypeID', protoName: 'RuleTypeID')
    ..aOS(6, _omitFieldNames ? '' : 'Description', protoName: 'Description')
    ..aOS(7, _omitFieldNames ? '' : 'Definition', protoName: 'Definition')
    ..aOS(8, _omitFieldNames ? '' : 'Issuer', protoName: 'Issuer')
    ..pPS(9, _omitFieldNames ? '' : 'Attributes', protoName: 'Attributes')
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  CreateRuleRequest clone() => CreateRuleRequest()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  CreateRuleRequest copyWith(void Function(CreateRuleRequest) updates) => super.copyWith((message) => updates(message as CreateRuleRequest)) as CreateRuleRequest;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static CreateRuleRequest create() => CreateRuleRequest._();
  @$core.override
  CreateRuleRequest createEmptyInstance() => create();
  static $pb.PbList<CreateRuleRequest> createRepeated() => $pb.PbList<CreateRuleRequest>();
  @$core.pragma('dart2js:noInline')
  static CreateRuleRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<CreateRuleRequest>(create);
  static CreateRuleRequest? _defaultInstance;

  @$pb.TagNumber(1)
  $core.String get organisationID => $_getSZ(0);
  @$pb.TagNumber(1)
  set organisationID($core.String value) => $_setString(0, value);
  @$pb.TagNumber(1)
  $core.bool hasOrganisationID() => $_has(0);
  @$pb.TagNumber(1)
  void clearOrganisationID() => $_clearField(1);

  @$pb.TagNumber(2)
  $1.EntityType get entity => $_getN(1);
  @$pb.TagNumber(2)
  set entity($1.EntityType value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasEntity() => $_has(1);
  @$pb.TagNumber(2)
  void clearEntity() => $_clearField(2);

  @$pb.TagNumber(3)
  $core.String get name => $_getSZ(2);
  @$pb.TagNumber(3)
  set name($core.String value) => $_setString(2, value);
  @$pb.TagNumber(3)
  $core.bool hasName() => $_has(2);
  @$pb.TagNumber(3)
  void clearName() => $_clearField(3);

  @$pb.TagNumber(4)
  RuleType get ruleType => $_getN(3);
  @$pb.TagNumber(4)
  set ruleType(RuleType value) => $_setField(4, value);
  @$pb.TagNumber(4)
  $core.bool hasRuleType() => $_has(3);
  @$pb.TagNumber(4)
  void clearRuleType() => $_clearField(4);

  @$pb.TagNumber(5)
  $core.String get ruleTypeID => $_getSZ(4);
  @$pb.TagNumber(5)
  set ruleTypeID($core.String value) => $_setString(4, value);
  @$pb.TagNumber(5)
  $core.bool hasRuleTypeID() => $_has(4);
  @$pb.TagNumber(5)
  void clearRuleTypeID() => $_clearField(5);

  @$pb.TagNumber(6)
  $core.String get description => $_getSZ(5);
  @$pb.TagNumber(6)
  set description($core.String value) => $_setString(5, value);
  @$pb.TagNumber(6)
  $core.bool hasDescription() => $_has(5);
  @$pb.TagNumber(6)
  void clearDescription() => $_clearField(6);

  @$pb.TagNumber(7)
  $core.String get definition => $_getSZ(6);
  @$pb.TagNumber(7)
  set definition($core.String value) => $_setString(6, value);
  @$pb.TagNumber(7)
  $core.bool hasDefinition() => $_has(6);
  @$pb.TagNumber(7)
  void clearDefinition() => $_clearField(7);

  @$pb.TagNumber(8)
  $core.String get issuer => $_getSZ(7);
  @$pb.TagNumber(8)
  set issuer($core.String value) => $_setString(7, value);
  @$pb.TagNumber(8)
  $core.bool hasIssuer() => $_has(7);
  @$pb.TagNumber(8)
  void clearIssuer() => $_clearField(8);

  @$pb.TagNumber(9)
  $pb.PbList<$core.String> get attributes => $_getList(8);
}

class CreateRuleResponse extends $pb.GeneratedMessage {
  factory CreateRuleResponse({
    Rule? rule,
  }) {
    final result = create();
    if (rule != null) result.rule = rule;
    return result;
  }

  CreateRuleResponse._();

  factory CreateRuleResponse.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory CreateRuleResponse.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'CreateRuleResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOM<Rule>(1, _omitFieldNames ? '' : 'Rule', protoName: 'Rule', subBuilder: Rule.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  CreateRuleResponse clone() => CreateRuleResponse()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  CreateRuleResponse copyWith(void Function(CreateRuleResponse) updates) => super.copyWith((message) => updates(message as CreateRuleResponse)) as CreateRuleResponse;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static CreateRuleResponse create() => CreateRuleResponse._();
  @$core.override
  CreateRuleResponse createEmptyInstance() => create();
  static $pb.PbList<CreateRuleResponse> createRepeated() => $pb.PbList<CreateRuleResponse>();
  @$core.pragma('dart2js:noInline')
  static CreateRuleResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<CreateRuleResponse>(create);
  static CreateRuleResponse? _defaultInstance;

  @$pb.TagNumber(1)
  Rule get rule => $_getN(0);
  @$pb.TagNumber(1)
  set rule(Rule value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasRule() => $_has(0);
  @$pb.TagNumber(1)
  void clearRule() => $_clearField(1);
  @$pb.TagNumber(1)
  Rule ensureRule() => $_ensure(0);
}

/// Update
class UpdateRuleRequest extends $pb.GeneratedMessage {
  factory UpdateRuleRequest({
    $core.String? ruleID,
    $core.String? name,
    $core.String? description,
    $core.String? definition,
    $1.EntityType? entity,
    $core.String? issuer,
    $core.Iterable<$core.String>? attributes,
  }) {
    final result = create();
    if (ruleID != null) result.ruleID = ruleID;
    if (name != null) result.name = name;
    if (description != null) result.description = description;
    if (definition != null) result.definition = definition;
    if (entity != null) result.entity = entity;
    if (issuer != null) result.issuer = issuer;
    if (attributes != null) result.attributes.addAll(attributes);
    return result;
  }

  UpdateRuleRequest._();

  factory UpdateRuleRequest.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory UpdateRuleRequest.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'UpdateRuleRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOS(1, _omitFieldNames ? '' : 'RuleID', protoName: 'RuleID')
    ..aOS(2, _omitFieldNames ? '' : 'Name', protoName: 'Name')
    ..aOS(3, _omitFieldNames ? '' : 'Description', protoName: 'Description')
    ..aOS(4, _omitFieldNames ? '' : 'Definition', protoName: 'Definition')
    ..e<$1.EntityType>(5, _omitFieldNames ? '' : 'Entity', $pb.PbFieldType.OE, protoName: 'Entity', defaultOrMaker: $1.EntityType.ENTITY_TYPE_UNKNOWN, valueOf: $1.EntityType.valueOf, enumValues: $1.EntityType.values)
    ..aOS(6, _omitFieldNames ? '' : 'Issuer', protoName: 'Issuer')
    ..pPS(7, _omitFieldNames ? '' : 'Attributes', protoName: 'Attributes')
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  UpdateRuleRequest clone() => UpdateRuleRequest()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  UpdateRuleRequest copyWith(void Function(UpdateRuleRequest) updates) => super.copyWith((message) => updates(message as UpdateRuleRequest)) as UpdateRuleRequest;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static UpdateRuleRequest create() => UpdateRuleRequest._();
  @$core.override
  UpdateRuleRequest createEmptyInstance() => create();
  static $pb.PbList<UpdateRuleRequest> createRepeated() => $pb.PbList<UpdateRuleRequest>();
  @$core.pragma('dart2js:noInline')
  static UpdateRuleRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<UpdateRuleRequest>(create);
  static UpdateRuleRequest? _defaultInstance;

  @$pb.TagNumber(1)
  $core.String get ruleID => $_getSZ(0);
  @$pb.TagNumber(1)
  set ruleID($core.String value) => $_setString(0, value);
  @$pb.TagNumber(1)
  $core.bool hasRuleID() => $_has(0);
  @$pb.TagNumber(1)
  void clearRuleID() => $_clearField(1);

  @$pb.TagNumber(2)
  $core.String get name => $_getSZ(1);
  @$pb.TagNumber(2)
  set name($core.String value) => $_setString(1, value);
  @$pb.TagNumber(2)
  $core.bool hasName() => $_has(1);
  @$pb.TagNumber(2)
  void clearName() => $_clearField(2);

  @$pb.TagNumber(3)
  $core.String get description => $_getSZ(2);
  @$pb.TagNumber(3)
  set description($core.String value) => $_setString(2, value);
  @$pb.TagNumber(3)
  $core.bool hasDescription() => $_has(2);
  @$pb.TagNumber(3)
  void clearDescription() => $_clearField(3);

  @$pb.TagNumber(4)
  $core.String get definition => $_getSZ(3);
  @$pb.TagNumber(4)
  set definition($core.String value) => $_setString(3, value);
  @$pb.TagNumber(4)
  $core.bool hasDefinition() => $_has(3);
  @$pb.TagNumber(4)
  void clearDefinition() => $_clearField(4);

  @$pb.TagNumber(5)
  $1.EntityType get entity => $_getN(4);
  @$pb.TagNumber(5)
  set entity($1.EntityType value) => $_setField(5, value);
  @$pb.TagNumber(5)
  $core.bool hasEntity() => $_has(4);
  @$pb.TagNumber(5)
  void clearEntity() => $_clearField(5);

  @$pb.TagNumber(6)
  $core.String get issuer => $_getSZ(5);
  @$pb.TagNumber(6)
  set issuer($core.String value) => $_setString(5, value);
  @$pb.TagNumber(6)
  $core.bool hasIssuer() => $_has(5);
  @$pb.TagNumber(6)
  void clearIssuer() => $_clearField(6);

  @$pb.TagNumber(7)
  $pb.PbList<$core.String> get attributes => $_getList(6);
}

class UpdateRuleResponse extends $pb.GeneratedMessage {
  factory UpdateRuleResponse({
    Rule? rule,
  }) {
    final result = create();
    if (rule != null) result.rule = rule;
    return result;
  }

  UpdateRuleResponse._();

  factory UpdateRuleResponse.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory UpdateRuleResponse.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'UpdateRuleResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOM<Rule>(1, _omitFieldNames ? '' : 'Rule', protoName: 'Rule', subBuilder: Rule.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  UpdateRuleResponse clone() => UpdateRuleResponse()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  UpdateRuleResponse copyWith(void Function(UpdateRuleResponse) updates) => super.copyWith((message) => updates(message as UpdateRuleResponse)) as UpdateRuleResponse;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static UpdateRuleResponse create() => UpdateRuleResponse._();
  @$core.override
  UpdateRuleResponse createEmptyInstance() => create();
  static $pb.PbList<UpdateRuleResponse> createRepeated() => $pb.PbList<UpdateRuleResponse>();
  @$core.pragma('dart2js:noInline')
  static UpdateRuleResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<UpdateRuleResponse>(create);
  static UpdateRuleResponse? _defaultInstance;

  @$pb.TagNumber(1)
  Rule get rule => $_getN(0);
  @$pb.TagNumber(1)
  set rule(Rule value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasRule() => $_has(0);
  @$pb.TagNumber(1)
  void clearRule() => $_clearField(1);
  @$pb.TagNumber(1)
  Rule ensureRule() => $_ensure(0);
}

/// Get
class GetRuleRequest extends $pb.GeneratedMessage {
  factory GetRuleRequest({
    $core.String? ruleID,
  }) {
    final result = create();
    if (ruleID != null) result.ruleID = ruleID;
    return result;
  }

  GetRuleRequest._();

  factory GetRuleRequest.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory GetRuleRequest.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'GetRuleRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOS(1, _omitFieldNames ? '' : 'RuleID', protoName: 'RuleID')
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  GetRuleRequest clone() => GetRuleRequest()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  GetRuleRequest copyWith(void Function(GetRuleRequest) updates) => super.copyWith((message) => updates(message as GetRuleRequest)) as GetRuleRequest;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static GetRuleRequest create() => GetRuleRequest._();
  @$core.override
  GetRuleRequest createEmptyInstance() => create();
  static $pb.PbList<GetRuleRequest> createRepeated() => $pb.PbList<GetRuleRequest>();
  @$core.pragma('dart2js:noInline')
  static GetRuleRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<GetRuleRequest>(create);
  static GetRuleRequest? _defaultInstance;

  @$pb.TagNumber(1)
  $core.String get ruleID => $_getSZ(0);
  @$pb.TagNumber(1)
  set ruleID($core.String value) => $_setString(0, value);
  @$pb.TagNumber(1)
  $core.bool hasRuleID() => $_has(0);
  @$pb.TagNumber(1)
  void clearRuleID() => $_clearField(1);
}

class GetRuleResponse extends $pb.GeneratedMessage {
  factory GetRuleResponse({
    Rule? rule,
  }) {
    final result = create();
    if (rule != null) result.rule = rule;
    return result;
  }

  GetRuleResponse._();

  factory GetRuleResponse.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory GetRuleResponse.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'GetRuleResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOM<Rule>(1, _omitFieldNames ? '' : 'Rule', protoName: 'Rule', subBuilder: Rule.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  GetRuleResponse clone() => GetRuleResponse()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  GetRuleResponse copyWith(void Function(GetRuleResponse) updates) => super.copyWith((message) => updates(message as GetRuleResponse)) as GetRuleResponse;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static GetRuleResponse create() => GetRuleResponse._();
  @$core.override
  GetRuleResponse createEmptyInstance() => create();
  static $pb.PbList<GetRuleResponse> createRepeated() => $pb.PbList<GetRuleResponse>();
  @$core.pragma('dart2js:noInline')
  static GetRuleResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<GetRuleResponse>(create);
  static GetRuleResponse? _defaultInstance;

  @$pb.TagNumber(1)
  Rule get rule => $_getN(0);
  @$pb.TagNumber(1)
  set rule(Rule value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasRule() => $_has(0);
  @$pb.TagNumber(1)
  void clearRule() => $_clearField(1);
  @$pb.TagNumber(1)
  Rule ensureRule() => $_ensure(0);
}

/// List
class ListRulesRequest extends $pb.GeneratedMessage {
  factory ListRulesRequest({
    $core.String? organisationID,
    RuleType? ruleType,
    $core.String? ruleTypeID,
    $1.EntityType? entity,
  }) {
    final result = create();
    if (organisationID != null) result.organisationID = organisationID;
    if (ruleType != null) result.ruleType = ruleType;
    if (ruleTypeID != null) result.ruleTypeID = ruleTypeID;
    if (entity != null) result.entity = entity;
    return result;
  }

  ListRulesRequest._();

  factory ListRulesRequest.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory ListRulesRequest.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'ListRulesRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOS(1, _omitFieldNames ? '' : 'OrganisationID', protoName: 'OrganisationID')
    ..e<RuleType>(2, _omitFieldNames ? '' : 'RuleType', $pb.PbFieldType.OE, protoName: 'RuleType', defaultOrMaker: RuleType.RULE_TYPE_PROJECT_UNKNOWN, valueOf: RuleType.valueOf, enumValues: RuleType.values)
    ..aOS(3, _omitFieldNames ? '' : 'RuleTypeID', protoName: 'RuleTypeID')
    ..e<$1.EntityType>(4, _omitFieldNames ? '' : 'Entity', $pb.PbFieldType.OE, protoName: 'Entity', defaultOrMaker: $1.EntityType.ENTITY_TYPE_UNKNOWN, valueOf: $1.EntityType.valueOf, enumValues: $1.EntityType.values)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  ListRulesRequest clone() => ListRulesRequest()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  ListRulesRequest copyWith(void Function(ListRulesRequest) updates) => super.copyWith((message) => updates(message as ListRulesRequest)) as ListRulesRequest;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static ListRulesRequest create() => ListRulesRequest._();
  @$core.override
  ListRulesRequest createEmptyInstance() => create();
  static $pb.PbList<ListRulesRequest> createRepeated() => $pb.PbList<ListRulesRequest>();
  @$core.pragma('dart2js:noInline')
  static ListRulesRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<ListRulesRequest>(create);
  static ListRulesRequest? _defaultInstance;

  @$pb.TagNumber(1)
  $core.String get organisationID => $_getSZ(0);
  @$pb.TagNumber(1)
  set organisationID($core.String value) => $_setString(0, value);
  @$pb.TagNumber(1)
  $core.bool hasOrganisationID() => $_has(0);
  @$pb.TagNumber(1)
  void clearOrganisationID() => $_clearField(1);

  @$pb.TagNumber(2)
  RuleType get ruleType => $_getN(1);
  @$pb.TagNumber(2)
  set ruleType(RuleType value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasRuleType() => $_has(1);
  @$pb.TagNumber(2)
  void clearRuleType() => $_clearField(2);

  @$pb.TagNumber(3)
  $core.String get ruleTypeID => $_getSZ(2);
  @$pb.TagNumber(3)
  set ruleTypeID($core.String value) => $_setString(2, value);
  @$pb.TagNumber(3)
  $core.bool hasRuleTypeID() => $_has(2);
  @$pb.TagNumber(3)
  void clearRuleTypeID() => $_clearField(3);

  @$pb.TagNumber(4)
  $1.EntityType get entity => $_getN(3);
  @$pb.TagNumber(4)
  set entity($1.EntityType value) => $_setField(4, value);
  @$pb.TagNumber(4)
  $core.bool hasEntity() => $_has(3);
  @$pb.TagNumber(4)
  void clearEntity() => $_clearField(4);
}

class ListRulesResponse extends $pb.GeneratedMessage {
  factory ListRulesResponse({
    $core.Iterable<Rule>? rules,
  }) {
    final result = create();
    if (rules != null) result.rules.addAll(rules);
    return result;
  }

  ListRulesResponse._();

  factory ListRulesResponse.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory ListRulesResponse.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'ListRulesResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..pc<Rule>(1, _omitFieldNames ? '' : 'Rules', $pb.PbFieldType.PM, protoName: 'Rules', subBuilder: Rule.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  ListRulesResponse clone() => ListRulesResponse()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  ListRulesResponse copyWith(void Function(ListRulesResponse) updates) => super.copyWith((message) => updates(message as ListRulesResponse)) as ListRulesResponse;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static ListRulesResponse create() => ListRulesResponse._();
  @$core.override
  ListRulesResponse createEmptyInstance() => create();
  static $pb.PbList<ListRulesResponse> createRepeated() => $pb.PbList<ListRulesResponse>();
  @$core.pragma('dart2js:noInline')
  static ListRulesResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<ListRulesResponse>(create);
  static ListRulesResponse? _defaultInstance;

  @$pb.TagNumber(1)
  $pb.PbList<Rule> get rules => $_getList(0);
}

/// Delete
class DeleteRuleRequest extends $pb.GeneratedMessage {
  factory DeleteRuleRequest({
    $core.String? ruleID,
    $core.String? issuer,
  }) {
    final result = create();
    if (ruleID != null) result.ruleID = ruleID;
    if (issuer != null) result.issuer = issuer;
    return result;
  }

  DeleteRuleRequest._();

  factory DeleteRuleRequest.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory DeleteRuleRequest.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'DeleteRuleRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOS(1, _omitFieldNames ? '' : 'RuleID', protoName: 'RuleID')
    ..aOS(2, _omitFieldNames ? '' : 'Issuer', protoName: 'Issuer')
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  DeleteRuleRequest clone() => DeleteRuleRequest()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  DeleteRuleRequest copyWith(void Function(DeleteRuleRequest) updates) => super.copyWith((message) => updates(message as DeleteRuleRequest)) as DeleteRuleRequest;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static DeleteRuleRequest create() => DeleteRuleRequest._();
  @$core.override
  DeleteRuleRequest createEmptyInstance() => create();
  static $pb.PbList<DeleteRuleRequest> createRepeated() => $pb.PbList<DeleteRuleRequest>();
  @$core.pragma('dart2js:noInline')
  static DeleteRuleRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<DeleteRuleRequest>(create);
  static DeleteRuleRequest? _defaultInstance;

  @$pb.TagNumber(1)
  $core.String get ruleID => $_getSZ(0);
  @$pb.TagNumber(1)
  set ruleID($core.String value) => $_setString(0, value);
  @$pb.TagNumber(1)
  $core.bool hasRuleID() => $_has(0);
  @$pb.TagNumber(1)
  void clearRuleID() => $_clearField(1);

  @$pb.TagNumber(2)
  $core.String get issuer => $_getSZ(1);
  @$pb.TagNumber(2)
  set issuer($core.String value) => $_setString(1, value);
  @$pb.TagNumber(2)
  $core.bool hasIssuer() => $_has(1);
  @$pb.TagNumber(2)
  void clearIssuer() => $_clearField(2);
}

class DeleteRuleResponse extends $pb.GeneratedMessage {
  factory DeleteRuleResponse() => create();

  DeleteRuleResponse._();

  factory DeleteRuleResponse.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory DeleteRuleResponse.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'DeleteRuleResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  DeleteRuleResponse clone() => DeleteRuleResponse()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  DeleteRuleResponse copyWith(void Function(DeleteRuleResponse) updates) => super.copyWith((message) => updates(message as DeleteRuleResponse)) as DeleteRuleResponse;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static DeleteRuleResponse create() => DeleteRuleResponse._();
  @$core.override
  DeleteRuleResponse createEmptyInstance() => create();
  static $pb.PbList<DeleteRuleResponse> createRepeated() => $pb.PbList<DeleteRuleResponse>();
  @$core.pragma('dart2js:noInline')
  static DeleteRuleResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<DeleteRuleResponse>(create);
  static DeleteRuleResponse? _defaultInstance;
}

/// Enable
class EnableRuleRequest extends $pb.GeneratedMessage {
  factory EnableRuleRequest({
    $core.String? ruleID,
  }) {
    final result = create();
    if (ruleID != null) result.ruleID = ruleID;
    return result;
  }

  EnableRuleRequest._();

  factory EnableRuleRequest.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory EnableRuleRequest.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'EnableRuleRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOS(1, _omitFieldNames ? '' : 'RuleID', protoName: 'RuleID')
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  EnableRuleRequest clone() => EnableRuleRequest()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  EnableRuleRequest copyWith(void Function(EnableRuleRequest) updates) => super.copyWith((message) => updates(message as EnableRuleRequest)) as EnableRuleRequest;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static EnableRuleRequest create() => EnableRuleRequest._();
  @$core.override
  EnableRuleRequest createEmptyInstance() => create();
  static $pb.PbList<EnableRuleRequest> createRepeated() => $pb.PbList<EnableRuleRequest>();
  @$core.pragma('dart2js:noInline')
  static EnableRuleRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<EnableRuleRequest>(create);
  static EnableRuleRequest? _defaultInstance;

  @$pb.TagNumber(1)
  $core.String get ruleID => $_getSZ(0);
  @$pb.TagNumber(1)
  set ruleID($core.String value) => $_setString(0, value);
  @$pb.TagNumber(1)
  $core.bool hasRuleID() => $_has(0);
  @$pb.TagNumber(1)
  void clearRuleID() => $_clearField(1);
}

class EnableRuleResponse extends $pb.GeneratedMessage {
  factory EnableRuleResponse({
    Rule? rule,
  }) {
    final result = create();
    if (rule != null) result.rule = rule;
    return result;
  }

  EnableRuleResponse._();

  factory EnableRuleResponse.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory EnableRuleResponse.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'EnableRuleResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOM<Rule>(1, _omitFieldNames ? '' : 'Rule', protoName: 'Rule', subBuilder: Rule.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  EnableRuleResponse clone() => EnableRuleResponse()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  EnableRuleResponse copyWith(void Function(EnableRuleResponse) updates) => super.copyWith((message) => updates(message as EnableRuleResponse)) as EnableRuleResponse;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static EnableRuleResponse create() => EnableRuleResponse._();
  @$core.override
  EnableRuleResponse createEmptyInstance() => create();
  static $pb.PbList<EnableRuleResponse> createRepeated() => $pb.PbList<EnableRuleResponse>();
  @$core.pragma('dart2js:noInline')
  static EnableRuleResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<EnableRuleResponse>(create);
  static EnableRuleResponse? _defaultInstance;

  @$pb.TagNumber(1)
  Rule get rule => $_getN(0);
  @$pb.TagNumber(1)
  set rule(Rule value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasRule() => $_has(0);
  @$pb.TagNumber(1)
  void clearRule() => $_clearField(1);
  @$pb.TagNumber(1)
  Rule ensureRule() => $_ensure(0);
}

/// Disable
class DisableRuleRequest extends $pb.GeneratedMessage {
  factory DisableRuleRequest({
    $core.String? ruleID,
  }) {
    final result = create();
    if (ruleID != null) result.ruleID = ruleID;
    return result;
  }

  DisableRuleRequest._();

  factory DisableRuleRequest.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory DisableRuleRequest.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'DisableRuleRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOS(1, _omitFieldNames ? '' : 'RuleID', protoName: 'RuleID')
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  DisableRuleRequest clone() => DisableRuleRequest()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  DisableRuleRequest copyWith(void Function(DisableRuleRequest) updates) => super.copyWith((message) => updates(message as DisableRuleRequest)) as DisableRuleRequest;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static DisableRuleRequest create() => DisableRuleRequest._();
  @$core.override
  DisableRuleRequest createEmptyInstance() => create();
  static $pb.PbList<DisableRuleRequest> createRepeated() => $pb.PbList<DisableRuleRequest>();
  @$core.pragma('dart2js:noInline')
  static DisableRuleRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<DisableRuleRequest>(create);
  static DisableRuleRequest? _defaultInstance;

  @$pb.TagNumber(1)
  $core.String get ruleID => $_getSZ(0);
  @$pb.TagNumber(1)
  set ruleID($core.String value) => $_setString(0, value);
  @$pb.TagNumber(1)
  $core.bool hasRuleID() => $_has(0);
  @$pb.TagNumber(1)
  void clearRuleID() => $_clearField(1);
}

class DisableRuleResponse extends $pb.GeneratedMessage {
  factory DisableRuleResponse({
    Rule? rule,
  }) {
    final result = create();
    if (rule != null) result.rule = rule;
    return result;
  }

  DisableRuleResponse._();

  factory DisableRuleResponse.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory DisableRuleResponse.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'DisableRuleResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOM<Rule>(1, _omitFieldNames ? '' : 'Rule', protoName: 'Rule', subBuilder: Rule.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  DisableRuleResponse clone() => DisableRuleResponse()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  DisableRuleResponse copyWith(void Function(DisableRuleResponse) updates) => super.copyWith((message) => updates(message as DisableRuleResponse)) as DisableRuleResponse;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static DisableRuleResponse create() => DisableRuleResponse._();
  @$core.override
  DisableRuleResponse createEmptyInstance() => create();
  static $pb.PbList<DisableRuleResponse> createRepeated() => $pb.PbList<DisableRuleResponse>();
  @$core.pragma('dart2js:noInline')
  static DisableRuleResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<DisableRuleResponse>(create);
  static DisableRuleResponse? _defaultInstance;

  @$pb.TagNumber(1)
  Rule get rule => $_getN(0);
  @$pb.TagNumber(1)
  set rule(Rule value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasRule() => $_has(0);
  @$pb.TagNumber(1)
  void clearRule() => $_clearField(1);
  @$pb.TagNumber(1)
  Rule ensureRule() => $_ensure(0);
}

/// GetJSONTree
class GetJSONTreeRequest extends $pb.GeneratedMessage {
  factory GetJSONTreeRequest({
    $core.String? ruleID,
  }) {
    final result = create();
    if (ruleID != null) result.ruleID = ruleID;
    return result;
  }

  GetJSONTreeRequest._();

  factory GetJSONTreeRequest.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory GetJSONTreeRequest.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'GetJSONTreeRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOS(1, _omitFieldNames ? '' : 'RuleID', protoName: 'RuleID')
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  GetJSONTreeRequest clone() => GetJSONTreeRequest()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  GetJSONTreeRequest copyWith(void Function(GetJSONTreeRequest) updates) => super.copyWith((message) => updates(message as GetJSONTreeRequest)) as GetJSONTreeRequest;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static GetJSONTreeRequest create() => GetJSONTreeRequest._();
  @$core.override
  GetJSONTreeRequest createEmptyInstance() => create();
  static $pb.PbList<GetJSONTreeRequest> createRepeated() => $pb.PbList<GetJSONTreeRequest>();
  @$core.pragma('dart2js:noInline')
  static GetJSONTreeRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<GetJSONTreeRequest>(create);
  static GetJSONTreeRequest? _defaultInstance;

  @$pb.TagNumber(1)
  $core.String get ruleID => $_getSZ(0);
  @$pb.TagNumber(1)
  set ruleID($core.String value) => $_setString(0, value);
  @$pb.TagNumber(1)
  $core.bool hasRuleID() => $_has(0);
  @$pb.TagNumber(1)
  void clearRuleID() => $_clearField(1);
}

class GetJSONTreeResponse extends $pb.GeneratedMessage {
  factory GetJSONTreeResponse({
    $core.String? jSONTree,
  }) {
    final result = create();
    if (jSONTree != null) result.jSONTree = jSONTree;
    return result;
  }

  GetJSONTreeResponse._();

  factory GetJSONTreeResponse.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory GetJSONTreeResponse.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'GetJSONTreeResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOS(1, _omitFieldNames ? '' : 'JSONTree', protoName: 'JSONTree')
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  GetJSONTreeResponse clone() => GetJSONTreeResponse()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  GetJSONTreeResponse copyWith(void Function(GetJSONTreeResponse) updates) => super.copyWith((message) => updates(message as GetJSONTreeResponse)) as GetJSONTreeResponse;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static GetJSONTreeResponse create() => GetJSONTreeResponse._();
  @$core.override
  GetJSONTreeResponse createEmptyInstance() => create();
  static $pb.PbList<GetJSONTreeResponse> createRepeated() => $pb.PbList<GetJSONTreeResponse>();
  @$core.pragma('dart2js:noInline')
  static GetJSONTreeResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<GetJSONTreeResponse>(create);
  static GetJSONTreeResponse? _defaultInstance;

  @$pb.TagNumber(1)
  $core.String get jSONTree => $_getSZ(0);
  @$pb.TagNumber(1)
  set jSONTree($core.String value) => $_setString(0, value);
  @$pb.TagNumber(1)
  $core.bool hasJSONTree() => $_has(0);
  @$pb.TagNumber(1)
  void clearJSONTree() => $_clearField(1);
}


const $core.bool _omitFieldNames = $core.bool.fromEnvironment('protobuf.omit_field_names');
const $core.bool _omitMessageNames = $core.bool.fromEnvironment('protobuf.omit_message_names');
