I just checked out the UI code surrounding MerchantGuildBankRepairButtonIcon for that tooltip and they're using GetGuildBankWithdrawMoney().
Code:
GameTooltip:SetOwner(self, "ANCHOR_RIGHT");
local repairAllCost, canRepair = GetRepairAllCost();
if ( canRepair and (repairAllCost > 0) ) then
GameTooltip:SetText(REPAIR_ALL_ITEMS);
SetTooltipMoney(GameTooltip, repairAllCost);
local amount = GetGuildBankWithdrawMoney();
local guildBankMoney = GetGuildBankMoney();
if ( amount == -1 ) then
-- Guild leader shows full guild bank amount
amount = guildBankMoney;
else
amount = min(amount, guildBankMoney);
end
GameTooltip:AddLine(GUILDBANK_REPAIR, nil, nil, nil, 1);
SetTooltipMoney(GameTooltip, amount, "GUILD_REPAIR");
GameTooltip:Show();
end
After playing with the permissions in my personal guild I found that GetGuildBankWithdrawMoney() is returning the amount I can use for repairs when no gold withdraws are allowed.