What is the estimated size of complete blockchain when all bitcoins are mined. i.e around 2140? By size, I mean how many GBs or TBs of data storage I would need to save entire blockchain starting from Genesis block when all bitcoins are mined?
The blockchain will not reach its maximum capacity by the year 2140, the only thing that is going to change is that all bitcoins (a little less than 21M bitcoins) will have been mined by then and the total number of blocks at that time will be around 6,929,999. 

Assuming that a block's maximum size will remain 1 MB then we can estimate that the maximum blockchain size at that time will be ~6,6 terabytes. 

Currently the average block size is 0,4 MB so if the usage remains in the same levels the estimated blockchain size will be around 2,64 terabytes.

A minimal block contains a single 1-input/1-output transaction. The tx size in this case is: 1 x 148 + 1 x 34 + 10 + 1 = 193 bytes. Adding 4 bytes for the magic number, 4 bytes for the blocksize indicator, 80 bytes for the block header and 1 byte for the transaction counter we come up with: 193 + 4 + 80 + 1 = 278 bytes or 0,0002651214599609375 MBs so if limits remain unchanged, the minimum blockchain size at that moment will be ~1,794 GB (~0,001752 TB).

For coinbase txs the tx size is ~233 bytes so the total size of the blockchain occupied by coinbase txs would be ~1,503 GB

So to sum up:

Min est. size: ~1,794 GB (~1,503 GB for coinbase-only txs)
Avg est. size: ~2,64 TB
Max est. size: ~6,6 TB


Note: The blockchain is currently ~36,5 GB so the above min value is only the theoretical limit, we already know that the blockchain size will be larger than today's ~36,5 GB.