<?php

declare(strict_types=1);

namespace Kylin\Wechat\Facades;

use Illuminate\Support\Facades\Facade;

/**
 * 微信服务门面类
 *
 * 提供静态访问微信服务的便捷方式
 *
 * @method static \Kylin\Wechat\Wechat\WechatManager driver(?string $driver = null, string $name = 'default')
 * @method static \EasyWeChat\OfficialAccount\Application officialAccount(string $name = 'default')
 * @method static \EasyWeChat\MiniProgram\Application miniProgram(string $name = 'default')
 * @method static \EasyWeChat\OpenPlatform\Application openPlatform(string $name = 'default')
 * @method static \EasyWeChat\Work\Application work(string $name = 'default')
 * @method static \EasyWeChat\OpenWork\Application openWork(string $name = 'default')
 * @method static \EasyWeChat\Payment\Application payment(string $name = 'default')
 * @method static array getSupportedDrivers()
 * @method static bool isDriverSupported(string $driver)
 * @method static void forgetDriver(string $driver, string $name = 'default')
 * @method static void forgetAllDrivers()
 *
 * @see \Kylin\Wechat\Wechat\WechatManager
 */
final class Wechat extends Facade
{
    /**
     * 获取门面访问器名称
     *
     * @return string 服务容器中的键名
     */
    protected static function getFacadeAccessor(): string
    {
        return 'wechat';
    }
}

