How can remote node provide txs for my public key if a key image is generated for every output? Can someone explain in detail what information is revealed in the process of looking up txs
firstly, your wallet gets an index of where your transactions are on the blockchain. So, when you first connect to a node (remote or either) with your wallet, your wallet first scans the chain with your private view and spend keys. it then stores the index information for where your outputs are in a local file... the cache.
When you want to create a transaction, the wallet asks the remote node for a bunch of random outputs. The node then sends these random outputs to the wallet. The wallet then combines these outputs with the ones that you actually own to create a ring signature. Its somewhat more complicated than that, but thats the general idea. For instance, I know there were advancements regarding how the wallet asks for outputs, such that the remote node can't run a differential between the two sets of outputs. I think the wallet is the one responsible for picking outputs, so it requests output information for index 1,2,3,4,5,6,7. Your real output is one of them. The remote node doesn't know which one.
Then, when your transaction is created, your wallet creates a key image.