private function getStockSubjectMappings()
    {
        return [
            [
                'fieldName'  => 'stockMode',
                'columnName' => 'stock_mode',
                'type'       => 'string',
                'length'     => 16,
                'nullable'   => false,
                'default'    => Stock\StockSubjectModes::MODE_AUTO,
            ],
            [
                'fieldName'  => 'stockState',
                'columnName' => 'stock_state',
                'type'       => 'string',
                'length'     => 16,
                'nullable'   => false,
                'default'    => Stock\StockSubjectStates::STATE_OUT_OF_STOCK,
            ],
            [
                'fieldName'  => 'stockFloor',
                'columnName' => 'stock_floor',
                'type'       => 'decimal',
                'precision'  => 10,
                'scale'      => 3,
                'nullable'   => true,
                'default'    => 0,
            ],
            [
                'fieldName'  => 'inStock',
                'columnName' => 'in_stock',
                'type'       => 'decimal',
                'precision'  => 10,
                'scale'      => 3,
                'nullable'   => false,
                'default'    => 0,
            ],
            [
                'fieldName'  => 'availableStock',
                'columnName' => 'available_stock',
                'type'       => 'decimal',
                'precision'  => 10,
                'scale'      => 3,
                'nullable'   => false,
                'default'    => 0,
            ],
            [
                'fieldName'  => 'virtualStock',
                'columnName' => 'virtual_stock',
                'type'       => 'decimal',
                'precision'  => 10,
                'scale'      => 3,
                'nullable'   => false,
                'default'    => 0,
            ],
            [
                'fieldName'  => 'replenishmentTime',
                'columnName' => 'replenishment_time',
                'type'       => 'smallint',
                'nullable'   => false,
                'default'    => 7,
            ],
            [
                'fieldName'  => 'estimatedDateOfArrival',
                'columnName' => 'estimated_date_of_arrival',
                'type'       => 'datetime',
                'nullable'   => true,
            ],
            [
                'fieldName'  => 'geocode',
                'columnName' => 'geocode',
                'type'       => 'string',
                'length'     => 16,
                'nullable'   => true,
            ],
            [
                'fieldName'  => 'minimumOrderQuantity',
                'columnName' => 'minimum_order_quantity',
                'type'       => 'decimal',
                'precision'  => 10,
                'scale'      => 3,
                'nullable'   => false,
                'default'    => 1,
            ],
            [
                'fieldName'  => 'quoteOnly',
                'columnName' => 'quote_only',
                'type'       => 'boolean',
                'nullable'   => false,
                'default'    => false,
            ],
            [
                'fieldName'  => 'endOfLife',
                'columnName' => 'end_of_life',
                'type'       => 'boolean',
                'nullable'   => false,
                'default'    => false,
            ],
        ];
    }