function _query(queryFn) {
    return (selector) => (protoOrDescriptor,
        // tslint:disable-next-line:no-any decorator
        name) => {
        const descriptor = {
            get() {
                return queryFn(this.renderRoot, selector);
            },
            enumerable: true,
            configurable: true,
        };
        return (name !== undefined) ?
            legacyQuery(descriptor, protoOrDescriptor, name) :
            standardQuery(descriptor, protoOrDescriptor);
    };
}
Base-implementation of `@query` and `@queryAll` decorators.

@param queryFn exectute a `selector` (ie, querySelector or querySelectorAll)
against `target`.
@suppress {visibility} The descriptor accesses an internal field on the
element.