return {
    supportsConfigurationDoneRequest = true,
    supportsFunctionBreakpoints = true,
    supportsConditionalBreakpoints = true,
    supportsHitConditionalBreakpoints = true,
    supportsEvaluateForHovers = true,
    supportsSetVariable = true,
    supportsRestartFrame = true,
    supportsRestartRequest = true,
    supportsExceptionInfoRequest = true,
    supportTerminateDebuggee = true,
    supportSuspendDebuggee = true,
    supportsDelayedStackTraceLoading = true,
    supportsLoadedSourcesRequest = true,
    supportsLogPoints = true,
    supportsTerminateThreadsRequest = true,
    supportsSetExpression = true,
    supportsTerminateRequest = true,
    supportsReadMemoryRequest = true,
    supportsWriteMemoryRequest = true,
    supportsClipboardContext = true,
    supportsExceptionFilterOptions = true,
    exceptionBreakpointFilters = {
        {
            default = false,
            filter = 'runtime',
            label = 'Runtime Errors',
            supportsCondition = true,
            description = 'Error raised by lua runtime.',
        },
        {
            default = false,
            filter = 'assert',
            label = 'Assertion Errors',
            supportsCondition = true,
            description = 'Error raised by `assert`.',
        },
        {
            default = false,
            filter = 'error',
            label = 'Common Errors',
            supportsCondition = true,
            description = 'Error raised by `error`.',
        },
        {
            default = false,
            filter = 'syntax',
            label = 'Syntax Errors',
            supportsCondition = true,
            description = 'Syntax error.',
        },
        {
            default = false,
            filter = 'other',
            label = 'Native Errors',
            supportsCondition = true,
            description = 'Error raised by `lua_error`.',
        },
        {
            default = false,
            filter = 'lua',
            label = 'Caught Errors By Lua',
            supportsCondition = true,
            description = 'Breaks on errors, if it is caught by lua.',
            conditionDescription = 'error:match "attempt to index a nil value"',
        },
        {
            default = true,
            filter = 'native',
            label = 'Caught Errors By Native',
            supportsCondition = true,
            description = 'Breaks on errors, if it is caught by native code.',
            conditionDescription = 'error:match "attempt to index a nil value"',
        },
        {
            default = true,
            filter = 'panic',
            label = 'Uncaught Errors',
            supportsCondition = true,
            description = 'Breaks only on errors that are nor handled.',
            conditionDescription = 'error:match "attempt to index a nil value"',
        }
    }
}
