namespace POSGkSwaggerModel
{
    /// <summary>
    /// ItemRegistrationConfig &lt;p&gt;This configuration entity defines the item registration process.&lt;/p&gt;
    /// </summary>
    public record comGkSoftwarePosApiModelConfigProcessFlowsItemRegistrationConfig	{
        /// <summary>
        /// &lt;p&gt;This parameter defines the unique process ID.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;This parameter defines the unique process ID.&lt;/p&gt;</value>
        public string processId { get; init; }
        /// <summary>
        /// &lt;p&gt;Defines, whether the process should be treated as a main process or a shared helper process.&lt;br /&gt; This is relevant for context restriction checks, e.g. during barcode processing.&lt;br /&gt; Defaults to true. If false the related process will not be considered as main process.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Defines, whether the process should be treated as a main process or a shared helper process.&lt;br /&gt; This is relevant for context restriction checks, e.g. during barcode processing.&lt;br /&gt; Defaults to true. If false the related process will not be considered as main process.&lt;/p&gt;</value>
        public bool? mainProcess { get; init; }
        /// <summary>
        /// &lt;p&gt;This config defines authorization related processes.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;This config defines authorization related processes.&lt;/p&gt;</value>
        public ComGkSoftwarePosApiModelConfigProcessFlowsauthorizationConfig authorizationConfig { get; init; }
        /// <summary>
        /// &lt;p&gt;This configuration defines barcode processes.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;This configuration defines barcode processes.&lt;/p&gt;</value>
        public ComGkSoftwarePosApiModelConfigProcessActionprocessBarcodeConfig processBarcodeConfig { get; init; }
        /// <summary>
        /// &lt;p&gt;This configuration defines the transaction preview.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;This configuration defines the transaction preview.&lt;/p&gt;</value>
        public ComGkSoftwarePosApiModelConfigProcessUitransactionPreviewContextConfig transactionPreviewContextConfig { get; init; }
        /// <summary>
        /// &lt;p&gt;This parameter defines the configuration for the transaction preview in connection with the function Show Message.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;This parameter defines the configuration for the transaction preview in connection with the function Show Message.&lt;/p&gt;</value>
        public ComGkSoftwarePosApiModelConfigProcessUiTransactionPreviewContextConfig transactionPreviewShowMessage { get; init; }
        /// <summary>
        /// Gets or Sets SubtotalPositionOperationConfig
        /// </summary>
        public ComGkSoftwarePosApiModelConfigProcessActionPositionOperationConfig subtotalPositionOperationConfig { get; init; }
        /// <summary>
        /// Gets or Sets PromptReceiptDataConfig
        /// </summary>
        public ComGkSoftwarePosApiModelConfigProcessUipromptReceiptDataConfig promptReceiptDataConfig { get; init; }
        /// <summary>
        /// Gets or Sets PayTowerErrorDialog
        /// </summary>
        public ComGkSoftwarePosApiModelConfigProcessUiMessageDialogConfig payTowerErrorDialog { get; init; }
        /// <summary>
        /// &lt;p&gt;This configuration defines the goods return process.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;This configuration defines the goods return process.&lt;/p&gt;</value>
        public ComGkSoftwarePosApiModelConfigProcessFlowsgoodsReturnConfig goodsReturnConfig { get; init; }
        /// <summary>
        /// &lt;p&gt;This configuration defines the empties return process.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;This configuration defines the empties return process.&lt;/p&gt;</value>
        public ComGkSoftwarePosApiModelConfigProcessFlowsemptiesReturnConfig emptiesReturnConfig { get; init; }
        /// <summary>
        /// Gets or Sets AlternativeTaxConfig
        /// </summary>
        public ComGkSoftwarePosApiModelConfigProcessFlowsalternativeTaxConfig alternativeTaxConfig { get; init; }
        /// <summary>
        /// Gets or Sets DefaultTareConfig
        /// </summary>
        public ComGkSoftwarePosApiModelConfigProcessFlowsSetdefaultTareConfig defaultTareConfig { get; init; }
        /// <summary>
        /// Gets or Sets ToggleTareFixConfig
        /// </summary>
        public ComGkSoftwarePosApiModelConfigProcessFlowstoggleTareFixConfig toggleTareFixConfig { get; init; }
        /// <summary>
        /// &lt;p&gt;This configuration defines the permanent customer information panel.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;This configuration defines the permanent customer information panel.&lt;/p&gt;</value>
        public ComGkSoftwarePosApiModelConfigProcessFlowspermanentCustomerInformationConfig permanentCustomerInformationConfig { get; init; }
        /// <summary>
        /// Gets or Sets CreateLayawayConfig
        /// </summary>
        public ComGkSoftwarePosApiModelConfigProcessFlowscreateLayawayConfig createLayawayConfig { get; init; }
        /// <summary>
        /// &lt;p&gt;It defines the rescan configuration. &lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;It defines the rescan configuration. &lt;/p&gt;</value>
        public ComGkSoftwarePosApiModelConfigProcessFlowsrescanConfig rescanConfig { get; init; }
        /// <summary>
        /// &lt;p&gt;It defines if the discount info should be displayed in transaction preview.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;It defines if the discount info should be displayed in transaction preview.&lt;/p&gt;</value>
        public bool? discountInfoEnabled { get; init; }
        /// <summary>
        /// &lt;p&gt;It defines if the item info should be displayed in transaction preview.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;It defines if the item info should be displayed in transaction preview.&lt;/p&gt;</value>
        public bool? itemInfoEnabled { get; init; }
        /// <summary>
        /// &lt;p&gt;It defines if the item image should be displayed in transaction preview.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;It defines if the item image should be displayed in transaction preview.&lt;/p&gt;</value>
        public bool? itemImageEnabled { get; init; }
        /// <summary>
        /// &lt;p&gt;It defines a list of text type codes that should be displayed as icon sales info.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;It defines a list of text type codes that should be displayed as icon sales info.&lt;/p&gt;</value>
        public List<string> IconSalesInfoTextTypeCodes { get; init; }
        /// <summary>
        /// &lt;p&gt;It defines a list of text type codes that should be displayed as text sales info.&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;It defines a list of text type codes that should be displayed as text sales info.&lt;/p&gt;</value>
        public List<string> TextSalesInfoTextTypeCodes { get; init; }
        /// <summary>
        /// Gets or Sets SalesInfoTextLimit
        /// </summary>
        public int? salesInfoTextLimit { get; init; }
        /// <summary>
        /// Gets or Sets TerminalDisplayLinesConfigId
        /// </summary>
        public string terminalDisplayLinesConfigId { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom08 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom10 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom09 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom07 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom05 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom06 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom11 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom12 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom13 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom14 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom15 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom03 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom02 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom04 { get; init; }
        /// <summary>
        /// &lt;p&gt;Customizable information&lt;/p&gt;
        /// </summary>
        /// <value>&lt;p&gt;Customizable information&lt;/p&gt;</value>
        public string xXCustom01 { get; init; }
	}
}
