user10845: I'm browsing through some of Electrum's default plugins in the /plugins directory. It looks like plugins hook into Electrum using @hook annotation, as in this method from audio_mode:
@hook
def transaction_dialog(self, dialog):
    b = QPushButton()
    b.setIcon(QIcon(":icons/speaker.png"))

https://github.com/spesmilo/electrum/blob/master/plugins/audio_modem/qt.py
Where can I find Electrum 3 API documentation for writing plugins such as a list of all hook function names and the arguments they take?

user10845: Not official by any means, but here's something I cooked up:
https://bitzuma.com/posts/an-introduction-to-plugin-development-for-the-electrum-bitcoin-wallet/
I found these hooks by iterating over Electrum's hook_names object.

10845: <p>I'm browsing through some of Electrum's default plugins in the /plugins directory. It looks like plugins hook into Electrum using @hook annotation, as in this method from audio_mode:</p>

<pre><code>@hook
def transaction_dialog(self, dialog):
    b = QPushButton()
    b.setIcon(QIcon(":icons/speaker.png"))
</code></pre>

<p><a href="https://github.com/spesmilo/electrum/blob/master/plugins/audio_modem/qt.py" rel="nofollow noreferrer">https://github.com/spesmilo/electrum/blob/master/plugins/audio_modem/qt.py</a></p>

<p>Where can I find Electrum 3 API documentation for writing plugins such as a list of all hook function names and the arguments they take?</p>
 10845: <p>Not official by any means, but here's something I cooked up:</p>

<p><a href="https://bitzuma.com/posts/an-introduction-to-plugin-development-for-the-electrum-bitcoin-wallet/" rel="nofollow noreferrer">https://bitzuma.com/posts/an-introduction-to-plugin-development-for-the-electrum-bitcoin-wallet/</a></p>

<p>I found these hooks by iterating over Electrum's <code>hook_names</code> object.</p>
