package NSaas;

message TExportTypeOptions {
    enum TAckMode {
        DEFAULT = 1;
        INVERSE = 2;
        ALWAYS  = 3;
    }

    required string Name = 1;
    required string Processor = 2;

    optional string KeyprefixTuple = 3 [default="SaasKeyprefix"];
    optional string ExternalShardTuple = 4 [default="SaasShard"];
    optional string VersionTuple = 5 [default="Version"];
    optional string ActionTypeTuple = 6 [default="ActionType"];
    optional string RTYServerUrlTuple = 7;
    optional string DistributorAttrsTuple = 8 [default="DistributorAttributes"];
    optional string ServiceTuple = 9 [default="SaasService"];
    optional string TimestampTuple = 10;
    optional string RealtimeTuple = 11 [default="Realtime"];
    optional string DeadlineTuple = 12 [default="Deadline"];
    optional string UpdateTypeTuple = 13 [default="UpdateType"];
    optional string FilterRankTuple = 14 [default="FilterRank"];

    optional string JsonDocsTuple = 20 [default="json_array"];

    optional TAckMode AckMode = 30 [default=DEFAULT];
    optional string TupleTimestampSuffix = 31 [default="_Timestamp"];
    optional string ExtraLogTuplesNamesList = 32;
}

message TTupleParsingOptions {
    optional string ExportTypeTuple = 1 [default="ExportType"];
    optional string DefaultExportType = 2 [default="JsonDocArray"];

    repeated TExportTypeOptions ExportType = 4;
}
